pymysql.err.DataError:1366的报错解决
可以在建立数据库时指定字符集,也可以建表的时候指定。
在MySQL中建库时指定字符集
create database cov default CHARACTER set utf8 collate utf8_general_ci;
在MySQL中建表时指定字符集
在MySQL中,字符集决定了数据库中数据的编码方式。如果在建表时没有指定字符集,MySQL将使用默认的字符集utf8。但是,如果数据中包含其他字符集的字符,就可能会出现乱码等问题。因此,在创建表时指定正确的字符集非常重要。
在CREATE TABLE语句中指定字符集
在使用CREATE TABLE语句创建表时,可以通过DEFAULT CHARSET指令来指定字符集。例如:
CREATE TABLE mytable ( id INT NOT NULL AUTO_INCREMENT, name VARCHAR(255) NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
在这里,使用DEFAULT CHARSET指令来指定字符集为utf8mb4。如果不指定字符集,MySQL将使用默认的字符集utf8。
请注意,如果创建了表后再修改字符集,将会重新编码所有的数据。因此,最好在创建表时就指定正确的字符集。
使用ALTER TABLE语句修改表的字符集
如果已经创建了表,但是字符集不正确,可以使用ALTER TABLE语句来修改字符集。例如:
ALTER TABLE mytable CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
在这里,使用CONVERT TO指令将字符集从utf8转换为utf8mb4。请注意,这个查询将修改表的所有列的字符集,如果需要修改特定的列,需要使用ALTER TABLE语句的MODIFY COLUMN子句。
到此这篇关于pymysql.err.DataError:1366的报错解决的文章就介绍到这了,更多相关pymysql.err.DataError:1366内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法
这篇文章主要介绍了Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块,结合实例形式较为详细的分析了shelve、xml、configparser、hashlib、hmac等模块的功能及使用方法,需要的朋友可以参考下2019-04-04tensorflow pb to tflite 精度下降详解
这篇文章主要介绍了tensorflow pb to tflite 精度下降详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-05-05python requests模拟登陆github的实现方法
这篇文章主要介绍了python requests模拟登陆github的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-12-12numpy中np.nditer、flags=[multi_index] 的用法说明
这篇文章主要介绍了numpy中np.nditer、flags=['multi_index'] 的用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2021-05-05
最新评论