MySQL中的表(table)能否用中文来命名它的列(column)?

阿里云-轻量应用服务器

首先,在MySQL都使用中文变量名、数据库表名和字段名是完全可的以。

原则上,中文和英文都被支持

1,主流的RDBMS,比如SQL Server 2012,对多语言的支持已经非常好

2,SQL语言允许使用中文,当然注意切换输入法时不要粗心混淆中英文标点

使用中文命名的

优点

1,英文单词不是每个都会拼写,有时还要查,要是IDE不支持变量名提示,有时候还会打错;如果用拼音那还不如用中文呢。

2,程序关键字是英文是为了方便输入,中文变量名也是为了方便阅读,同时也能方便输入。大多数情况下,中文语句的长度要远远短于相同含义的英文。

3,可以少写甚至不写注释了

缺点

1,使用中文会导致你在写 sql 语句时会需要频繁的切换输入法,毕竟 sql 关键字都是英文的。如:

insert into 产品表 (编号,名字,价格)value (。。。。。)
update 价格表 set 价格=9000 where 编号 = 。。。。。

2,很多sql 编辑器没有对中文做智能提示

3,字段名全部要加上“符号

4,容易导致乱码

总结

总之,MySQL 使用中文命名是弊多利少,不建议使用中文命名!


怎么样使用中文字段名?

创建数据库和数据表的时候指定它支持中文的字符集,即指定编码为DEFAULT CHARACTER SET gb2312;


关注微信公众号

码中人 微信公众号