Comment的语法
用法:
用 comment 语句将对于一个table,view,materialized view,或者列的说明添加到数据字典中去。将这个说明从数据库中删除的方法,就是将添加的说明置为空就可以了。
你也可以在下面的链接了解到:
·将说明 (comment)与 sql 语句和模式对象联系起来的更多关于 comments 的信息: http://www.stanford.edu/dept/itss/docs/oracle/10g/server.101/b10759/sql_elements006.htm#i31713
· oracledatabase reference 中的数据字典描述 comments 的更多信息: http://www.stanford.edu/dept/itss/docs/oracle/10g/server.101/b10755/statviews_part.htm#REFRN002
满足条件:
你要添加 comment 的对象必须在你的模式 (schema) 下或者满足下面条件:
·你必须具有 commentany table 的系统权限,才可以给table,view,或者materialized view添加 comment 。
·你必须具有comment any indextype 的系统权限,才可以给一个 indextype 添加 comment
·你必须具有 commentany operator 的系统权限,才可以给一个operator 添加 comment
语法:
comment::=
上面这幅图片的描述为:
COMMENT ON
{TABLE [ schema. ]
{table | view }
| COLUMN[ schema. ]
{table. | view. | materialized_view. } column
|OPERATOR [ schema. ] operator
|INDEXTYPE [ schema. ] indextype
|MATERIALIZED VIEW materialized_view
}
IS 'text' ;
语法描述:
Table
需要被添加 comment 的特定的 schema 和 table 或 materialized view 的名字。如果你省略了 schema( 模式 ) ,那么数据库就假定这个table 或者materialized view 是在你的 schema 中的。
注意:在早期的版本中,你可以用上面这个语法去为一个 materialized view 创建 comment ,但是现在你必须用 comment on materialised view 语句。
Column
需要添加 comment 的特定的 table , view , materializedview 的列的名字。如果你省略了schema ,那么数据库会假定这个table , view , materialized view 是在你当前的 schema 下的。
你可以通过查数据字典视图来查看某个表或者列的 comments :
· user_tab_comments
· dba_tab_comments
· all_tab_comments
· user_col_comments
· dba_col_comments
· all_col_comments
Operator
需要添加 comment 的特定的 operator 的名字。如果你省略了 schema ,那么 oracle 数据库将会假定 operator 存在你当前的 schema 中。
你可以通过查询下面的数据字典视图来查看关于一个具体的 operator 的 comments :
· user_operator_comments
· dba_operator_comments
· all_operator_comments
Indextype
需要添加 comment 的特定的 indextype 的名字。如果你省略了 schema ,那么 oracle 数据库将会假定 indextype 存在你当前的 schema 下。
你可以通过查询下面的数据字典视图来查看一个具体的 indextype 的 comments :
· user_indextype_comments
· dba_indextype_comments
· all_indextype_comments
Materializedview
需要添加 comment 的特定的 materialized view 的名字。如果你省略了 schema ,那么 oracle 数据库将假定 materialized view 存在你当前的 schema 下。
你可以通过查询下面的数据字典视图来查看一个具体的 materialized view 的 comments :
· user_mview_comments
· dba_mview_comments
· all_mview_comments
Is‘text’
具体 comment 的内容。请你参照 ’text’ 的语法描述:http://www.stanford.edu/dept/itss/docs/oracle/10g/server.101/b10759/sql_elements003.htm#i42617
下面是一个具体的实例:
1.给emp表添加comment:
SQL> comment on table emp is '员工信息表';
Comment added
SQL> select * from user_tab_comments where comments is not null;
TABLE_NAME TABLE_TYPE COMMENTS
------------------------------ ----------- --------------------------------------------------------------------------------
EMP TABLE 员工信息表
删除此comment:
SQL> comment on table emp is '';
Comment added
2.给emp表中sal列添加comment:
SQL> comment on column emp.sal is '员工薪水';
Comment added
SQL> select * from user_col_comments where TABLE_NAME='EMP';
TABLE_NAME COLUMN_NAME COMMENTS
------------------------------ ------------------------------ --------------------------------------------------------------------------------
EMP EMPNO
EMP ENAME
EMP JOB
EMP MGR
EMP HIREDATE
EMP SAL 员工薪水
EMP COMM
EMP DEPTNO
删除此列级comment:
SQL> comment on column emp.sal is '';
Comment added
原文 :
http://www.stanford.edu/dept/itss/docs/oracle/10g/server.101/b10759/statements_4009.htm#BEGIN