如何解决Delphi连接Mysql5.0出现乱码的问题

上一篇 / 下一篇  2008-08-14 16:54:48 / 个人分类:数据处理

1o.i+w0c(Eyus^7r0+------------------------------------------------------+
9y1_H.NG(u/`#fs }0+ 以下内容为本人原创,共享以赏读者,转帖时请保留该信息 +
P1FwBs^NaX dn0+ yeyanbo yeyanbo@hotmail.com +LUPA开源社区ZZ)j$[AA3b
+ http://yeyanbo.lupaworld.com +LUPA开源社区-o8_ JB`)izp"{ta
+------------------------------------------------------+ LUPA开源社区1x*F+}1Aabc8RZ/X,g

/b)L'I6LD$d qS6q(b0使用Delphi7, MyODBC 3.5连接MySQL 5.0, 数据库字符集设置为GBK, 居然出现乱码!!! LUPA开源社区9W Fg j(|g#[1I
解决方法:LUPA开源社区0j%p}%Pgk
1)设置ODBC中, Advanced-->Flag 3-->Read Options From my.cnfLUPA开源社区7rY)g\ H8v6X
2)将以下内容保存为%windir%\my.cnf(注意:是WINDOWS系统目录)
3Lbp&tJv%pB~0你可以将下面的内容复制保存成文件即可.

4\o G F+P&p'sb0[client]
*_N1@*@x r,E&N iA0default-character-set=gbk(gb2312)

rY%ET%K&b0以上是利用一个配置文件进行的处理.在发布程序的时候比较难处理. LUPA开源社区G+g'XC Ox|'H.F

---------------------------------------------------------------------------------------

-axy"zx"S0下面这个方法不用利用配置文件,可以在创建完数据连接之后执行. LUPA开源社区m bX$b[So1?RQ

   //"SET NAMES GB2312"的作用相当于LUPA开源社区n8Su2{5V~(O
   //SET character_set_client = GB2312;LUPA开源社区B.z!rr;]*d
   //SET character_set_results = GB2312;
7w U,c R Ue0   //SET character_set_connection = GB2312;
q3mUl"h0o;k0   ADOQuery1.Close();
+y|4w3I t1j,`/Rl0   ADOQuery1.SQL.Text := 'SET NAMES GB2312;';LUPA开源社区| pnN*S8`o.q4l
   ADOQuery1.ExecSQL();

0s)|XX ~ V ` D0   //当将此句注释掉的话,存入数据库的内容变为乱码LUPA开源社区qq'[$Ng&h
   ADOQuery1.Close();
7lA+i&r#sU v,C0   ADOQuery1.SQL.Text := 'SET character_set_client = GB2312;';LUPA开源社区o:S IB)K
   ADOQuery1.ExecSQL();
LUPA开源社区(B |wT,L8r9UD{

   //当将此句注释掉得话,从数据库中读取的内容为乱码
r"g\z"]d0{0   ADOQuery1.Close();LUPA开源社区.\;P4M.\,y$Mq
   ADOQuery1.SQL.Text := 'SET character_set_results = GB2312;';LUPA开源社区*Dr4h{)N2r
   ADOQuery1.ExecSQL();

][ |S2{9a0   //当将此句注释掉的话,存入数据库的内容变为乱码LUPA开源社区 v? X*wh-]R
   ADOQuery1.Close();
&a DPWN0   ADOQuery1.SQL.Text := 'SET character_set_connection = GB2312;';LUPA开源社区#SJ&y!bF2FJ4g
   ADOQuery1.ExecSQL();
LUPA开源社区6T.X C|9KDz9p


TAG:

引用 删除 Guest   /   2008-08-20 00:49:30
顶,支持一下。。。。
 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar