ITPub博客

首页 > 数据库 > Oracle > TABLE NAME的命名规则

TABLE NAME的命名规则

原创 Oracle 作者:wanghanjun 时间:2015-12-11 10:27:36 0 删除 编辑
其实这个也是OCA当中的一道题,Oracle规定创建表名和列名的时候只能包含如下字符
1).A-Z
2).a-z
3).0-9
4)._
5).#
6).$
最后Oracle两个不推荐,并且不能是保留字                  

不过我记不清楚表名是否可以使用数字开头,所以咱们来试一试
1).首先创建一个标准表
SQL> CREATE TABLE HR.EMP_001 ( EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER);

Table created.
成功啦

2).把表名前面加上一个数字
SQL> CREATE TABLE HR.007EMP_001 ( EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER);
CREATE TABLE HR.007EMP_001 ( EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER)
               *
ERROR at line 1:
ORA-00922: missing or invalid option

不可以

3).表明前面加一个#或者$    
SQL> CREATE TABLE HR.#EMP_001 ( EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER);
CREATE TABLE HR.#EMP_001 ( EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER)
                *
ERROR at line 1:
ORA-00911: invalid character

SQL> CREATE TABLE HR.$EMP_001 ( EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER);
CREATE TABLE HR.$EMP_001 ( EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER)
                *
ERROR at line 1:
ORA-00911: invalid character
也不行
所以得出结论,表明必须是字符开头

下面咱们来试一下列名
4).列名以数字开头                                           
SQL> CREATE TABLE HR.EMP_002 ( 123EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER);
CREATE TABLE HR.EMP_002 ( 123EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER)
                          *
ERROR at line 1:
ORA-00904: : invalid identifier
失败鸟

5).以$或者#开头呢?                    
SQL> CREATE TABLE HR.EMP_002 ( $EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER);
CREATE TABLE HR.EMP_002 ( $EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER)
                          *
ERROR at line 1:
ORA-00911: invalid character

SQL> CREATE TABLE HR.EMP_002 ( #EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER)
  2  ;
CREATE TABLE HR.EMP_002 ( #EMP_NAME VARCHAR2(30),BIRTH_DATE DATE , JOBID NUMBER)
                          *
ERROR at line 1:
ORA-00911: invalid character

也不行,所以这个和表名一样,必须以字符开头                                
       
补充一句,一个TABLE最多可以有1000列                   

                                               
                             
              

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8747612/viewspace-1870254/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: Inventory.xml的作用
请登录后发表评论 登录
全部评论

注册时间:2014-05-28

  • 博文量
    42
  • 访问量
    48163