案例数据库:Mysql
![]()
网上有很多解决该问题的思路,比如修改字符集,
set names gbk;
通常数据库这么设置之后再运行sql语句就成功了。这个问题好像是跟cmd命令行的配置有关。
如果是在后端语言中,拼接sql串然后执行碰到中文数据报错该问题,或者是未知字段赋值XXX。在此提供一种解决方案:
看看sql串是不是没加引号:
sql = “insert into 表名 values(name,age....)”
如果是上面的这种情况,请在value中加引号,如
sql = "insert into 表名 values('name','age'......)"
这样在后端语言中就可以用了,
这种情况发生在字符串格式化的地方比较多,如:
sql = insert into 表名 values('%s','%s') % ('小明','12')
这里的格式化就以python为例,其他不再赘述。
如果中文实在是插入不了,最后还提供一种解决方法:
就是将中文转换成数字,然后存入数据库,当要用的时候再解析出来
请参考:https://www.cnblogs.com/bigtreei/p/10954311.html
如python 的方法:
ord('单个中文汉字')
本文详细介绍了在使用MySQL数据库时遇到的中文数据插入失败的问题及其解决方案。包括调整字符集、正确使用引号以及将中文转换为数字存储等方法。
753

被折叠的 条评论
为什么被折叠?



