解决往数据库中插中文数据报错问题

案例数据库: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('单个中文汉字')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值