使用SQL时,一般将SELECT、INSERT、UPDATE等关键字大写,但在实际使用时,不论是全大写,小写、或部分小写都是不影响使用的。那么,如果表名和字段名在建表时使用了全小写(或部分小写),在使用表名、字段名时也可像关键字那样不用关注大小写吗?经过测试,发现在Oracle中是可以的(其他数据库没有测试)。如:
CREATE TABLE demo_test (
demo_code NUMBER(4),
demo_name VARCHAR2(10));
该表的表名、字段名都使用的小写字母,但在查询时,表名和字段名可以使用任意格式的大小写.
SELECT * FROM demo_test;
SELECT * FROM Demo_test;
SELECT * FROM Demo_Test;
这几种方式查询的表对象都是我们先前创建的:demo_test。也可以通过重新创建表对象来验证这一点,如:再次创建表名为:demo_TEst 的表时,Oracle会提示:ORA-00955: 名称已有现有对象使用。同理,使用字段名时也是这样:
SELECT * FROM demo_test WHERE demo_name = 'nic';
SELECT * FROM demo_test WHERE Demo_name = 'nic';
SELECT * FROM demo_test WHERE Demo_Name = 'nic';
以上查询语句会查询到相同的结果集。
注意:对于插入到表中的数据就不适用这样的规则了,插入的数据区分字母大小写,如下例子:
/* 录入demo_name字段的数据为'nic' */
/* 可以查询到录入的数据 */
SELECT * FROM demo_test WHERE demo_name = 'nic';
/* 查询不到结果集 */
SELECT * FROM demo_test WHERE demo_name = 'Nic';





