缺少右括号行 1
Missing right parenthesis line 1
我有以下代码
create table Department2 (
2 deptID number (15) primary key,
3 deptName char (45),
4 deptExt department1,
5 DivisionID references division1);
insert into department2 values (311, 'IT', (69193929489, 27222844821, 17897532567), 211);
我收到以下错误
ERROR at line 1: ORA-00907: missing right parenthesis
如何解决问题?
这是一个基于几个假设的解决方案:
department1
是一个 SQL 嵌套 table 类型
division1
是一个带有主键 的table
所以我们可以这样创建 table:
create table Department2 (
deptID number (15) primary key,
deptName char (45),
deptExt department1,
DivisionID references division1)
NESTED TABLE deptExt STORE AS deptExt_tab
;
请注意,无需进一步定义 DivisionID
:它从引用的 table 的主键列继承其数据类型。 NESTED TABLE 子句是创建嵌套 table 列所必需的,它在问题中的缺失令人不安。
像这样创建了 table,发布的插入语句确实会抛出 ORA-00907: missing right parenthesis
。这是由于部门 ID 的集合:我们正在实例化一个类型,这意味着我们需要在 VALUES 子句中引用该集合:
insert into department2
values (311, 'IT', department1(69193929489, 27222844821, 17897532567), 211);
我有以下代码
create table Department2 (
2 deptID number (15) primary key,
3 deptName char (45),
4 deptExt department1,
5 DivisionID references division1);
insert into department2 values (311, 'IT', (69193929489, 27222844821, 17897532567), 211);
我收到以下错误
ERROR at line 1: ORA-00907: missing right parenthesis
如何解决问题?
这是一个基于几个假设的解决方案:
department1
是一个 SQL 嵌套 table 类型division1
是一个带有主键 的table
所以我们可以这样创建 table:
create table Department2 (
deptID number (15) primary key,
deptName char (45),
deptExt department1,
DivisionID references division1)
NESTED TABLE deptExt STORE AS deptExt_tab
;
请注意,无需进一步定义 DivisionID
:它从引用的 table 的主键列继承其数据类型。 NESTED TABLE 子句是创建嵌套 table 列所必需的,它在问题中的缺失令人不安。
像这样创建了 table,发布的插入语句确实会抛出 ORA-00907: missing right parenthesis
。这是由于部门 ID 的集合:我们正在实例化一个类型,这意味着我们需要在 VALUES 子句中引用该集合:
insert into department2
values (311, 'IT', department1(69193929489, 27222844821, 17897532567), 211);