【发布时间】:2019-05-27 12:41:09
【问题描述】:
如何更新子类型的列值?
这样的代码无法访问学生的成绩属性:
update persons set grade = 'graduated';
CREATE OR REPLACE TYPE person (
name varchar2(20),
age number,
address varchar2(20)
) NOT FINAL;
CREATE OR REPLACE TYPE student UNDER person (
grade varchar2(20)
) NOT FINAL;
CREATE TABLE persons OF person;
INSERT INTO persons VALUES (student('Jon', 'undergraduate'));
如何将学生成绩更改为“已毕业”?
【问题讨论】:
-
你的人没有属性
grade -
如果您使用以下方式查询: select Treat(value(s) as student) from persons s;你可以看到它有属性grade;
标签: database oracle plsql object-relational-model