【发布时间】:2019-05-05 02:59:23
【问题描述】:
假设我正在使用一个表 person,并且 people 可能有多个姓氏,因此该属性应该存储在嵌套表中(而不是存储姓氏的位置),这是一个用于创建类型 last 的简单 sql在 oracle 的 sql developer (11G XE) 中添加一个示例行:
create type lastn as table of varchar2(10);
CREATE TABLE person
(
ID NUMBER NOT NULL
, last_name lastn
, CONSTRAINT EXEMPLE_PK PRIMARY KEY
(
ID
)
ENABLE
)nested table last_name store as ln;
insert into person values(1,ln('dani','bilel'));
我知道如何一次更新所有姓氏,但我需要保留现有姓氏并添加其他姓氏,或者删除一个姓氏而不影响其他姓氏。简而言之,我希望我的代码是这样的(我不熟悉 PL/SQL):
update person set last_name=last_name+'third last name' where id=1;
我知道它不会那样工作,我应该使用 PL/SQL 吗?,难道不是其他方式吗?
请原谅我的问题,感谢您的回复。
【问题讨论】:
标签: sql oracle11g nested-table object-relational-model