【问题标题】:add values to nested table from another table (oracle)从另一个表(oracle)向嵌套表添加值
【发布时间】:2021-11-24 08:25:58
【问题描述】:
我正在尝试将值插入到具有另一个表对象的嵌套表中。这就是我正在尝试的(对不起,我是使用 dbs 的新手):
INSERT INTO Ocurrences (..., oSpace) VALUES
(other inserts,
/* insert I don't know to do it to nested table oSpaces */
);
如何在 oSpaces 中添加值以从表空间插入对象?
谢谢。
【问题讨论】:
标签:
oracle
object-oriented-database
nested-table
【解决方案1】:
只需使用REFerences 的集合:
INSERT INTO Ocurrences (
CCase,
/* ... Other column identifiers ..., */
oSpaces
) VALUES (
'abc',
/* ... Other column values ..., */
tSpace(
(SELECT REF(s) FROM spaces s WHERE s.intcode='1')
)
);
db小提琴here
顺便说一句,'20/02/2020' 不是DATE 数据类型,它是一个字符串文字并依赖于隐式字符串到日期的转换。如果用户的 NLS_DATE_FORMAT 会话参数与您的字符串格式不匹配,则此隐式转换将失败,并且由于任何用户都可以随时更改其会话参数,因此您不应该依赖它。
相反,您应该使用:
- 日期文字
DATE '2020-02-20';或
- 显式转换
TO_DATE('20/02/2020', 'DD-MM-YYYY')。