欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

创建数据库表时,关于ORA-00907:缺失右括号与左括号问题如何解决?

程序员文章站 2022-03-31 09:30:09
今天使用Oracle数据库建表的时候,遇到了“ORA-00907: 缺失右括号”的问题,关于这个,做了一些总结: 报错的sql语句: create...

今天使用Oracle数据库建表的时候,遇到了“ORA-00907: 缺失右括号”的问题,关于这个,做了一些总结:

报错的sql语句:

create table pre_info(pre_name varchar2(20),pre_code varchar2(20),pre_num number(5),pre_price_old number(5),
pre_tax decimal(1,3),pre_price_net number(5,2),pre_dep varchar2(20),pre_starttime_plan date(8),pre_overtime_plan date(8),
pre_starttime_actu date(8),pre_overtime_actu date(8),pre_overtime_cust date(8),pre_overtime_cust varchar2(20),
pre_overtime_blo varchar2(1),pre_month varchar2(2));

改正后,sql语句如下:

create table pre_info(
pre_code varchar2(20) not null,
pre_name varchar2(20),
pre_num number(5),
pre_price_old number(5),pre_tax decimal(1,3),pre_price_net number(5,2),
pre_dep varchar2(20),pre_starttime_plan date,pre_overtime_plan date,
pre_starttime_actu date,pre_overtime_actu date,pre_overtime_cust varchar2(20),
pre_overtime_blo varchar2(1),pre_month varchar2(2),primary key(pre_code)
);

在创建数据表总结如下:

1.date限定字段大小的时候,会报错,比如,将date(12)去掉(12);

2.关键字顺序有误,也会报这样的错;

3.创建表时,如果表有关键字,用双引号括起来;

4.如果创建表时,未对字段中的表设置长度,也会报错;

5.创建主外键约束时外键类型跟主键类型不完全一致,也是会报错的。

同理,关于建表时左括号错误,可以参照上面总结。