易截截图软件、单文件、免安装、纯绿色、仅160KB

查看及修改mysql数据库的默认编码2

使用mysql 经常会遇到编码问题,而导致程序出现乱码,mysql 在以下几个地方会涉及到编码格式
数据库编码
服务器编码
连接编码
客户端编码
下面是一个典型的示例, 运行 mysql -u root
查看编码 mysql>status
mysql Ver 14.7 Distrib 4.1.14, for Win32 (ia32)
Connection id: 90
Current database: yitian
Current user: ODBC@localhost
SSL: Not in use
Using delimiter: ;
Server version: 4.1.14
Protocol version: 10
Connection: localhost via TCP/IP
Server characterset: latin1
Db characterset: gbk
Client characterset: latin1
Conn. characterset: latin1
TCP port: 3306
Uptime: 1 hour 28 min 21 sec
Server characterset: latin1 服务器使用的编码为 latin1
Db characterset: gbk 数据库 yitian的编码为 GBK
Client characterset: latin1 client 端为 latin1
Conn. characterset: latin1 连接的编码为 latin
如果我们要使用支持中文的 gbk 数据库, 就要在创建数据库时,使用下面的语法
GBK 使用
CREATE DATABASE yitian DEFAULT CHARACTER SET gbk
COLLATE gbk_chinese_ci;
utf8 使用
CREATE DATABASE IF NOT EXISTS yitian default charset
utf8 COLLATE utf8_general_ci;
如果要修改已存在的数据库设置使用
alter database testdb character set
utf8
然后在程序中连接时也应该设定相应的字符集 , 使用
SET CHARACTER SET GBK;
这时再查看看下编码
mysql>status
mysql Ver 14.7 Distrib 4.1.14, for Win32 (ia32)
Connection id: 90
Current database: yitian
Current user: ODBC@localhost
SSL: Not in use
Using delimiter: ;
Server version: 4.1.14
Protocol version: 10
Connection: localhost via TCP/IP
Server characterset: latin1
Db characterset: gbk
Client characterset: gbk
Conn. characterset: gbk
TCP port: 3306
Uptime: 1 hour 33 min 22 sec
就可以使用程序正确写入和读取数据了
如果要改变数据库的默认编码可以修改 my.ini
设置 my.ini
#default-character-set=GBK
default-character-set = UTF8


相关文档:

解决MySQL不允许从远程访问的方法

解决MySQL不允许从远程访问的方法
2009-06-04 13:11
1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
Sql代码 复制代码
   1. mysql -u root -pvmwaremysql>us ......

A simple mysql sample

#include <winsock2.h>
#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <mysql.h>
#pragma comment(lib,"libmysql")
int _tmain(int argc, _TCHAR* argv[])
{
MYSQL* mysql;
MYSQL_RES* results;
MYSQL_ROW record;
mysql = mysql_init(NULL);
if(! ......

mysql 5.0总结偷得


mysql 5.0存储过程学习总结
一.创建存储过程
1.基本语法:
create procedure sp_name()
begin
………
end
2.参数传递
二.调用存储过程
1.基本语法:call sp_name()
注意:存储过程名称后面必须加括号,哪怕该存储过程没有参数传递
三.删除存储过程
1.基本语法:
drop procedure sp_name// ......

记录点东西,MSSQL,MySQL,.NET的MD5加密

 MSSQL:select Right(sys.fn_VarBinToHexStr(hashbytes('MD5', '123456')),32)
 MSSQL16位:select Right(sys.fn_VarBinToHexStr(hashbytes('MD5', '123456')),16)
 MySQL:select md5('123456')
 .NET:string 结果字符串=System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFil ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号