如:User_Log,还是UserLog,
因为Oracle中要么都是大写,要么都是小写.

解决方案 »

  1.   

    一般都用下划线分割,因为缺省表名不区分大小写,所以即使建表脚本里面写成UserLog,从系统表里面取出来的变成USERLOG,看起来很难看。oracle本身很多系统表/视图也是这种风格。
      

  2.   

    表名两边加上"号,就不会全部变成大写了,否则都是默认为大写
    create table "t1" (id int);
      

  3.   

    对于SQL语句的里的词是不区分表名和字段名大小写的但是如果用表名和字段名作为where后面的查询条件=后面的值,就和普通字符串一样,区分大小写,所以在对数据字典里的表名和字段存在数据字典里都是大些的,所以需要用数据字典查询的表名,自动名和其他schema object的时候都用大写。同时由于parse sql区分大小写,所以我们在写sql的时候也需要有比较好的规范。==================================================================
    Inthirties关注Oracle数据库 维护 优化,安全,备份,恢复,迁移,故障处理如果你需要帮助或想和我一起学习的请联系
    联系方式QQ:370140387
    QQ群:  85837884(注明:数据库)
    电子邮件:[email protected]
    网站: http://www.inthirties.com
      

  4.   

    用下划线好一点,不过ORACLE不分大小写
      

  5.   

    SQL1  select col1, col2, col3 from table1SQL2   select object_name form dba_objects where object_name = ‘TABLE1’对于这两句,SQL1的col1, col2, col3, table1 都是不区分大小写的SQL2的object_name='TABLE1' 的table1是区分大小写的,在数据字典里对象的值都转换成大写了。
    同时由于parse sql的时候是区分大小写的,也就是对于parse sql来说
    select col1, col2, col3 from table1

    select col1, col2, col3 from Table1是作为不同的parse。连多个空格都会认作是不同的sql。parse sql是有时间开销的所以对于我们写sql来说,需要在开发前定好一定的sql开发的规范。
    ================================================================== 
    Inthirties关注Oracle数据库 维护 优化,安全,备份,恢复,迁移,故障处理 如果你需要帮助或想和我一起学习的请联系 
    联系方式QQ:370140387 
    QQ群:  85837884(注明:数据库) 
    电子邮件:[email protected] 
    网站: http://www.inthirties.com