今天我在了解某一功能时,发现数据库列名居然是中文的,工作六年多还是一回见到。只记得上学的时候,我们老师说过会出现兼容性等问题,具体已记不清楚了。

我好事的百度了下,整理了各网友给出的答案,希望对大家有帮助。

我们在使用中文的表名和列名的时候,先确认我们使用的数据库是否支持中文表名和列名。例如我最常用的SQL Server,它就是支持使用中文的。现在主流的数据库,对多语言的支持也在日益完善。

下面我们来说说选用中文的适合场景及优缺点。

场景

1、在不熟悉的领域(机械,医疗等专业)里,英文往往并不能准确的翻译,而使用拼音或缩写也不直观,不如直接使用英文。

2、在简历的、快速开法的(低成本仅供演示的)项目中,往往对数据字典没什么特别的要求,也无需考虑稳定性、迁移性等。使用中文可以方便修改逻辑结构模型,方便SQL语句设计,而且将来可以随时改为英文字段名。

优点:

1、不必考虑命名规范

2、很清晰的知道我们要操作的字段,看起来简直一目了然。--当然如果数据库被其他人进入也是一目了然,安全性差一点。

3、页面显示的时候无需转换。

4、添加、更改字段属性,无需调整永久字段。 --关于这一点,我并没有理解。若有人明白,请帮助下我,万分感谢。

缺点:

1、编写时中文的“,”和英文的“,”,中文的全角半角等切换太麻烦,很容易出问题。

2、看起来有点Low,也容易出现打错列名。--介于智能输入法的智能提示及我们国家语文的博大精深。

3、中文储存预英文储存有差异,所以一些系统视图中可能会有一些性能或者维护上的影响。合并列的时候很麻烦。

4、兼容性差。如多语言环境下、多种数据库情况下,兼容性差。在Java中,是不支持中文列名的,它会直接导致你的操作不成功。

总的来说,选用中文表名列名弊远大于利。所以为了避免不必要的麻烦和莫名其妙的错误,其他场景下还是选用英文为好。

但我们需要注意的是:

1、一定要命名规范。

2、要避免一些名称与关键字冲突。

3、考虑界面友好,页面显示一定要显示中文。

 
内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!