Oracle建表时提示标识符无效
今天用oracle建表时一直提示最后一行标识符无效,经过百度得知level是oracle的关键字,所以字段不能命名为level,后改为roadlevel,
CREATE TABLE road_new (
id varchar2(20) NOT NULL ,
name varchar2(50) DEFAULT NULL,
provinceID varchar2(10) DEFAULT NULL ,
startSite varchar2(100) DEFAULT NULL ,
startStationId varchar2(20) DEFAULT NULL ,
startLat varchar2(20) NOT NULL ,
startLng varchar2(20) NOT NULL ,
endSite varchar2(100),
endLat varchar2(20) NOT NULL ,
endLng varchar2(20) NOT NULL ,
endStationId varchar2(20) ,
level number(11)
)
附:命名规范:
1. 是指数据库、数据库对象如TABLE、SEQUENCE、PROCEDURE、COLUMN等的命名约定;
2. 命名富有意义英文词汇,除个别通用的(见列表),要避免使用缩写),多个单词组成的,中间以下划线分割;
3. 除数据库名称长度为1-8个字符,其余为1-30个字符,Database link名称也不要超过30个字符;
4. 命名只能使用英文字母,数字和下划线;
5. 避免使用Oracle的保留字如level、关键字如type(见列表);
6. 名表之间相关列名尽量同名;
7. 数据库的命名:网上数据库命名为“OLPS”+表示站点(SITE,以下同)的2-4个字符,后台数据库命名为“BOPS”+表示站点的2-4个字符。测试数据库命名为“OLPS|BOPS”+“TEST”, 开发数据库命名为“OLPS|BOPS”+“TEST”,用模式(SCHEMA/USER)的不同来区分不同的站点。
8. INDEX命名:table_name+column_name+index_type(1 byte)+idx,各部分以下划线()分割。多单词组成的column name,取前几个单词首字母,加末单词组成column_name。如:sample表member_id上的index: sample_mid_idx news表title上的unique index:news_titile_uidx;
9. SEQUENCE命名:seq+table_name;
第五条就是说不能用level、type等作为字段名。