生僻字怎么存入mysql。。。数据库 表 列的字符集全部设utf8。。存进去还是个问号。。。比如玥这个字

生僻字怎么存入mysql。。。数据库 表 列的字符集全部设utf8。。存进去还是个问号。。。比如玥这个字,第1张

这个问题一般和生僻字没有关系,应该是你本地数据库的编码格式有问题,出现?号说明你存进去的数据是乱码

我在我的电脑上把那个字插入到表中,

然后执行查询语句

并没有出现乱码,你检查下你的数据库的编码格式,使用这个sql:

show  variables like '%char%',我电脑上执行的结果如下,你可以比对一下

如有疑问,请联系我

g. 建树数据库用户。进修,终于把问题解决了。记下解决轨范,与跟我一样的新手分享。其中参数--no-create-info暗示不生成建表语句;--default-character-set=gb2312暗示按照原本字符集导出所稀有据。因为GB2312字符集只收录了6763个汉字,导致一些生僻字无法正常显示。轨范二:确定解决体例轨范三:字符集的改削a. 先导出表结构mysqldump -u root -p --default-character-set=gbk -d 数据库名 >createdb.sql其中参数-d暗示只导出表结构,不导出数据。第一次采用MySQL作为营业应用的数据库,因为经验不够丰硕,在安装数据库的时辰选择了GB2312编码。c. 导出所有记实轨范一: 剖析呈锨氚搽的原因把字符集由GB2312改成GBK。可是因为不能丢弃之前的数据,若何改削MySQL的字符集成了关头。mysqldump -u root -p --quick --no-create-info --extended-insert --default-character-set=gb2312 数据库名 >data.sqlb. 打开createdb.sql,手工把gb2312替代成gbk。d. 打开data.sql,手工把SET NAME gb2312改成SET NAME gbk。注重:如不美观data.sql很年夜,可能需要找一些替代工具来完成替代 *** 作,否则可以直接用UltraEdit之类的编纂工具打开改削。e. 在新的处事器上建树表,执行createdb.sql。起先用的也算驾轻就熟,然尔后续发现了生僻字不能显示的情形,把我搞得焦头烂额。经由好几天的试探、f. 导入数据,执行data.sqlmysql -u root -p 数据库名 <data.sqlmysql -u root -p 数据库名 <createdb.sql到这儿已经完成了数据库字符集年夜gb2312到gbk的改削,接下去可以登录数据库,手工把显示为"?"的乱码字年夜头更新一下。 查看原帖>>

采纳哦

可以的,你需要在发送所有查询之前先发送具有下面sql语句的查询:

$que='set names "gb2312"'

或者$que='set names "gbk"'

或者$que='set names "utf-8"'

然后发送查询,比如mysql_query($que)

哪一种看你选择的字符集了;对于你的应用,三种都行;我使用utf-8,没有问题。

另外,你的网页编码也要保持一致。

有问题可以发sjsr000000@gmail.com


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9621016.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存