我有一个对象类型
create or replace type header_o as object(
col1 number,
col2 number,
col3 number);
然后我创建表
create table tab1(
id number,
header header_o);
所以我想对header.col1
发表评论
当我尝试
comment on column tab1.header.col1 is 'comment goes here';
oracle引发了丢失的关键字。
我怎样才能做到这一点?
答案 0 :(得分:2)
不,你不能。 Oracle不支持此功能。oracle评论对象类型表的列
从documentation,您可以添加评论:
然而,您正在尝试向对象类型添加评论。您可以在表列。
中添加注释例如,
SQL> CREATE OR REPLACE type header_o
2 AS
3 object
4 (
5 col1 NUMBER,
6 col2 NUMBER,
7 col3 NUMBER)
8 /
Type created.
SQL> CREATE TABLE tab1
2 ( ID NUMBER, header header_o
3 )
4 /
Table created.
SQL> COMMENT ON COLUMN tab1.HEADER IS 'comment goes here'
2 /
Comment created.
答案 1 :(得分:2)
COMMENT语法可以追溯到时间的迷雾中,从对象类型开始。所以它只支持TABLE.COLUMN
我想可以扩展它以支持TABLE.COLUMN.ATTRIBUTE。复杂性是类型可以用类型构造,可以用类型构造,等等。这意味着语法的实现会复杂得多。这可能是甲骨文没有采用它的一个原因。
另一个原因可能是很少有人懒得在列或表上发表评论,这似乎不值得努力。
无论哪种方式,我担心这是变更请求。