0

ORA-00907: missing right parenthesis在 Oracle 11G 中,创建下表时收到错误消息

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 行和第 9 行。据我所知,所有括号都是可见的。在 shell 和 APEX 中都会出现此问题。

4

2 回答 2

0

您的创建表中有错字。您在两个字段定义之间缺少逗号,例如:

cat varchar2(20)
Refs varchar2(20),

所以使用“,”(逗号)分隔两个字段,例如

 cat varchar2(20),
                 ^
Refs varchar2(20),
于 2015-04-25T16:13:50.053 回答
0

您的create table 语句中有两个问题:

  1. 猫 varchar2(20)

缺少逗号

  1. lennet 字符(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>
于 2015-04-25T17:07:22.083 回答