长话短说,我试图做的是将一些数据插入表中,并且我在理解错误的时候遇到了一些问题。我会让代码为自己说话。希望你能帮助我。提前致谢!不一致的数据类型:预期的REF在尝试插入数据时遇到了错误
CREATE OR REPLACE TYPE Departament IS OBJECT (
deptno NUMBER(2),
dname CHAR(14)
);
/
CREATE OR REPLACE TYPE Employee IS OBJECT (
empno NUMBER(4),
ename CHAR(10),
dept REF Departament,
sal NUMBER(7,2)
) NOT FINAL;
/
CREATE OR REPLACE TYPE Manager UNDER Employee (
nrEmp NUMBER(2)
);
/
CREATE TABLE departament_list AS (SELECT deptno, dname FROM dept);
/
CREATE TABLE manager_list OF Manager;
/
INSERT INTO manager_list VALUES(Manager(7782, 'JOHN', Departament(20, 'TEXAS'), 6000, 2));
那么这里是最后一行出现以下错误
ORA-00932的问题:不一致的数据类型:预期REF SYS.DEPARTAMENT了 SYS.DEPARTAMENT。
现在不要误解我我已经尝试做整个选择thingy:REF(d)from departament_list d ...但我得到另一个错误,说默认构造函数的参数数量不正确。
也许我这样做的方式不对,你可以帮我弄清楚我误解的地方。再次感谢!
你可以显示你使用REf(d)的版本和确切的错误吗? –
不应该是这行:'CREATE TABLE departament_list AS(SELECT deptno,dname FROM dept);' 'CREATE TABLE departament_list AS(SELECT deptno,dname FROM Department'); – Typo
@Typo - 从列名看起来它基于旧的scott emp/dept模式,而不是具有部门的hr模式?尽管如此,不要认为这与问题有关。 –