Mysql中数据库中存放的格式GBK?UTF8?
小弟初学mysql,遇到这样一个问题。数据存放到mysql中后,是乱码,但是通过短信发送给别人的时候,别人能够正常看到。只是存放进mysql的格式不对。mysql中设置的格式是utf8的,那我如何才能让存放到mysql中的字符不是乱码,而且发送给别人以后也不是乱码呢?在什么地方设置格式??
没太明白,是你用程序处理,mysql里面的东西不乱,但是你用查询工具去查,就乱了?
如果是这样,你需要调整查询工具的编码设置。
你是在命令行看到的乱码?在查询前执行一下set names gbk;
我是通过程序,将内容插入到mysql中的,插入数字的话,在mysql中是正常显示。但是插入文字,在mysql中就是乱码。将那些乱码发送到手机上又是中文的了。
在命令行中也是可以正常显示的。到mysql里面了就是乱码了。
比如:
<?php
mysql_connect('localhost','user','password');
mysql_select_db('my_db');
//请注意,这步很关键,如果没有这步,所有的数据读写都会不正确的
//它的作用是设置本次数据库联接过程中,数据传输的默认字符集
mysql_query("set names utf8;");
//必须将gb2312(本地编码)转换成utf-8,也可以使用iconv()函数
mysql_query(mb_convet_encoding("insert into my_table values('测试');", "utf-8", "gb2312"));
?>
也就是说:执行mysql_query("set names xxxx");其中xxxx是你网页的编码(charset=xxxx),如果网页中charset=utf8,则xxxx=utf8,如果网页中 charset=gb2312,则xxxx=gb2312
mysql_query(sock_inbox,"set names UTF8");
inb
相关问答:
我有一个java环境下的程序,在本机运行正常,但发布到网的虚拟主机时不能连接数据库连接池
jdk 1.6 tomcat6.0.18 mysql5 mysqljdbc5.1.5
虚拟主机的技术人员说,只能配置局域的数据库连接池,也就是在M ......
有个winform程序,使用c#+mysql,需要在一个窗体设置mysql自动删除功能,包括自动删除多少天之前的数据以及是否开启自动删除功能,我程序退出后,还怎么控制Mysql自己删除啊?是不是要用mysql的event来实现?c#可以调用mysq ......
我对SQL SERVER和ACCESS比较熟,所以数据库的通用基础东西可以说都掌握的差不多了,我现在想要的就是以上两数据库的独特之处的介绍和应用介绍。
另外书最好对应最新版本 oracle是11g吧 10的也行;mysql是5.1吧
谢 ......
这个视频讲的很详细, 对新手非常有用, 基本上一看就懂
由于太大了(50m, 我只能上传20m), 我上传不了, 只好贴出下载地址
下载地址: http://ftel1.3800hk.com/0807/080720djxnzj.rar
好东西,下个看看
......
请高手指点,我对一张表查询后再更新,查询是子查询,报错:
You can't specify target table 'a_table' for update in from clause
完整SQL语句是
UPDATE a_table SET STATUS=0 WHERE ID=(SELECT MIN(ID) from a_tab ......