在Oracle 11G中,创建下所示的表时收到错误ORA-00907: missing right parenthesis
create table structured_1000(
year varchar2(4) NOT NULL,
CP varchar2(50),
ONSG varchar2(50),
ONSLA varchar2(9),
road varchar2(100) NOT NULL,
cat varchar2(20)
Refs varchar2(20),
Refn varchar2(20),
ajunction varchar2(20),
bjunction varchar2 (20),
lennet char(2)`
);
我列出了整个表格,因为有时错误行会发生变化——同时显示了第6行和第7行;9.据我所见,所有的括号都是可见的。此问题同时出现在shell和APEX中。
您的创建表语句中存在两个问题:
-
cat varchar2(20)
-
lennet char(2)`
解决这两个问题将成功创建表:
SQL> CREATE TABLE structured_1000
2 (
3 YEAR VARCHAR2(4) NOT NULL,
4 CP VARCHAR2(50),
5 ONSG VARCHAR2(50),
6 ONSLA VARCHAR2(9),
7 road VARCHAR2(100) NOT NULL,
8 cat VARCHAR2(20),
9 Refs VARCHAR2(20),
10 Refn VARCHAR2(20),
11 ajunction VARCHAR2(20),
12 bjunction VARCHAR2 (20),
13 lennet CHAR(2)
14 );
Table created.
SQL>
您的创建表中有一个拼写错误。您在两个字段定义之间缺少逗号,如:
cat varchar2(20)
Refs varchar2(20),
因此,使用","(逗号)分隔两个字段,如
cat varchar2(20),
^
Refs varchar2(20),