我想添加多行表/列注释。

通常使用

COMMENT ON TABLE USERS IS 'User table has the user data'

我需要的是一种在单引号内插入换行符的方法,例如;
COMMENT ON TABLE USERS IS 'User table has the user data <smthg_here_for_new_line> 1- Name column has name <smthg_here_for_new_line> 2- Number Column has the id'

这样,表的注释将显示为:
User table has the user data
1- Name column has name
2- Number Column has the id

有人知道如何添加多行表/列注释吗?

最佳答案

您可以简单地将换行符放在注释声明的单引号内,例如:

COMMENT ON COLUMN MYTABLE.MYCOLUMN
IS
'Line 1
Line 2.
Line 3';

但是请注意,在SQL Developer(可能还有其他工具)中,这将不会总是按预期显示。用以下查询...
SELECT *
FROM USER_COL_COMMENTS
WHERE
  TABLE_NAME = 'MYTABLE'
  AND COMMENTS IS NOT NULL;

...您将在“脚本输出”中找到所需的内容(即突出显示查询,右键单击,选择“运行脚本”):
TABLE_NAME COLUMN_NAME COMMENTS
---------- ----------- --------------
MYTABLE    MYCOLUMN    Line 1
                       Line 2
                       Line 3
MYTABLE    OTHERCOLUMN Other comments

但是在查询结果中(即突出显示查询,单击鼠标右键,选择“运行语句”),或者在打开表格并查看“列”标签时,完整的注释将一起显示在一行上。

注意:可在其中查询这些注释的表为:
  • 对表的评论:USER_TAB_COMMENTS
  • 对列的评论:USER_COL_COMMENTS
  • 09-12 03:02