首页 > 编程知识 正文

varchar100可以存多少汉字,mysql字段名可以用中文吗

时间:2023-05-06 20:47:00 阅读:120809 作者:3080

全部展开

mysqllatin1数据库支持中文编码。

ISO-8859-1编码是单字节码,与ASCII向后兼容,e 5a 48 de 588 b 662616964757 a 686964616 f 31334363432编码范围为0x00-0xFF,0x00-0x7F

ISO-8859-1中的字符除了ASCII中的字符外,还包括与西欧语言、希腊语、泰语、阿拉伯语和希伯来语相对应的字符符号。 欧元符号出现比较晚,未收录在ISO-8859-1中。

ISO-8859-1的编码范围使用单字节内的所有空间,因此不会舍弃在支持ISO-8859-1的系统上传输和存储其他编码字节流。

也就是说,将其他编码字节流视为ISO-8859-1编码没有问题。 这是一个重要的特性,MySQL数据库的缺省编码是Latin1,它利用了这一特性。 ASCII代码是7位容器,ISO-8859-1代码是8位容器。

如果数据库中表的字符集为latin1,则默认情况下也支持中文。 latin1可以覆盖所有1字节的值,其他码流可以视为latin1。

将gbk编码的字符串写入latin1的表中没有任何问题。 保存的是字节流,从表中读取写入的字符串没有任何问题。 此外,读取的字节流与原始写入的完全匹配。

读取后,如果在终端下方,则理解为locale类型(如果locale系为gbk,则此时写入的gbk中文列被正常回波)。

读取后写入文件时,文件编码方式为当时写入的字节流编码,例如以gbk写入时,读取并保存到文件后,文件编码也为gbk! 但是,混合编写(utf-8 gbk )可能会隐藏编辑器,导致乱码。

纯文本文件通常没有头,编辑器可以自己从字节流中识别编码方法和字符集

总之,无论是构建DB还是访问DB,只要采用默认的latin1,不仅可以支持中文,还可以支持任意的编码方式。

扩展数据:

中文编码注意事项:

1 .从可维护的观点出发,可以使用latin1,但尽量变更为utf8或gb系列

2 .发生乱码时:

showvariableslike ' character % ' showvariableslike ' collation _ % ';

要确保数据库中存储的数据与数据库代码匹配,即数据代码与character_set_database匹配; 要确保通信的字符集与数据库的字符集匹配,character_set_client、character_set_connection与character_set_database匹配

保证SELECT返回与程序代码匹配,即character_set_results与程序代码匹配; 保证程序代码与浏览器、终端代码一致

为简便起见,请确保每个字符集一致,写入mysql配置文件,每次在客户端设置字符集' setnames'xxx ',并确保字节流编码正确。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。