我上大学的任务,而且我在插入一个插页时遇到了麻烦。 我创建了一个名为memeber的对象
CREATE TYPE memeber AS OBJECT
(
member_id INTEGER,
member_name VARCHAR(30),
member_jobtitle VARCHAR(30),
member_skills skills_list,
past_projects past_projects_NTT
)
然后我创建了这个对象表
CREATE TABLE project_resources of MEMEBER
(
MEMBER_ID PRIMARY KEY,
MEMBER_NAME NOT NULL
)NESTED TABLE past_projects STORE AS PROJ_EXT;
然后我必须创建一个名为project的对象,如下所示
CREATE TYPE project as OBJECT
(
PROJECT_ID INTEGER,
PROJECT_ASSIGNED_MEMBER REF MEMEBER,
PROJECT_TITLE VARCHAR2(30)
);
我必须创建一个类型为project的对象表并将其更改
CREATE TABLE PROJECT_TABLE OF PROJECT;
ALTER TABLE PROJECT_TABLE ADD PRIMARY KEY(PROJECT_ID);
ALTER TABLE PROJECT_TABLE ADD (CONSTRAINT NULL_CHK CHECK(PROJECT_TITLE IS NOT NULL);
这不是我开始遇到麻烦的地方,我已经看到当所有值都是ref类型时如何向表中插入值,但是当我包含其他类型时我不确定语法。
这是我的尝试:
INSERT INTO PROJECT_TABLE
SELECT 1, REF(M)
FROM MEMEBER M
WHERE M.MEMBER_ID =1, 'KING KONG';
请问有人能为我解释一下语法吗?
答案 0 :(得分:0)
经过一些研究后,我找到了解决方案:
INSERT INTO PROJECT_TABLE
(PROJECT_ID,
PROJECT_ASSIGNED_MEMBER,
PROJECT_TITLE)VALUES(
2,
(SELECT REF(M) FROM project_resources M WHERE M.member_id = 2),
'Bomb');