你的位置:首页 > 数据库

[数据库]数据库的表名字段名大小写问题

  今天发现它真的是一个问题。

  拿我最喜欢的Oracle来说吧。一般情况下,建表不管大小写,建完表名、字段名总是大写的,这样你不得不在单词之间加下划线,从而增加了字段名长度,有时就超长了。在select的结果中显示也不美观。Oracle也支持以双引号括起来的字段名,不过,你可要注意啦,用"Ok"建的字段名用"OK"、"ok"和Ok都是查不到的,必须用"Ok"。我只想说一句,Oracle在这点上你就搞不懂用户的需求了吧。也许Oracle也很委屈:“大小写敏感和不敏感的方案我都提供了,你们还要我怎么样?”

  我认为,良好的大小写方案应该是这样的:忠实地记录建表时的大小写,显示也美观,也不必加下划线了。对select等DML语句大小写不敏感。比如用Ok建的字段,用ok、OK、Ok、oK都能查到,结果显示为Ok。这就完美了。对了,Sql Server就是这么干的。

  MySql呢,需要修改config文件的一个参数,但这个参数的值还有版本的兼容问题,有些版本需要修改值为2,有些版本不支持2,汗。

----我是分隔线----

Q:为什么要忠实记录建表时的大小写时?

A:一是因为显示的美观,不用加下划线就比加下划线美观,多个单词全大写(全小写)没有分隔就相当不美观,简直无法看。二是从数据库来生成代码的时候,代码需要大小写。

Q:为什么DML语句需要大小写不敏感?

A:人工书写DML方便。

----我是分隔线----

  以上是一家之言,也许具有深厚的Windows使用习惯,在不要人参公鸡的前提下,欢迎来表达你的观点。各种观点。