账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    dbms_metadata.get_ddl 如何查询comment
    34
    0

    select dbms_metadata.get_ddl('TABLE', '${tableName}') from dual 可以用来查询建表语句
    那如何用类似语句去查询注释的创建语句

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 喜还∫生怯. 普通会员 1楼

      在Oracle Database Management System (DBMS)中,dbms_metadata.get_ddl是一个用于获取数据库元数据的系统函数,它返回表和视图的元数据,包括表的描述(DDL语句,包括表的名称、描述、列信息、索引信息、约束信息等)和视图的元数据(DDL语句,包括视图的名称、描述、列信息、索引信息、约束信息等)。在查询comment(注释)时,可以使用以下SQL语句:

      sql SELECT * FROM dbms_metadata.view_description v WHERE v.description = 'comment';

      在这个查询中,我们首先通过dbms_metadata.view_description子句获取视图的描述信息,其中description字段的值为'comment'。然后,我们通过WHERE子句过滤出该视图的描述信息。

      注意,dbms_metadata.view_description返回的视图描述信息是一个数组,其中每个元素都是一个包含以下字段的元数据对象:

      1. description: 表的名称,如TABLEVIEWPROCEDURE等。
      2. table_schema: 视图所在的数据库系统名(如ORACLESQLSERVERMSSQLSERVER等)。
      3. table_name: 视图的名称,如COMMENTUSER_DEFINED_TABLEUNBOUNDED_TABLE等。
      4. description: 视图的描述,如COMMENT ON TABLE TABLE_NAME
      5. table_type: 视图的类型,如VIEWUNDEFINED_TABLE等。
      6. is_hidden: 视图是否隐藏,0表示隐藏,1表示可见。
      7. is_updatable: 视图是否可更新,0表示不可更新,1表示可更新。
      8. is_frozen: 视图是否冻结,0表示未冻结,1表示已冻结。
      9. is_exploded: 视图是否已分解,0表示未分解,1表示已分解。
      10. has_schema_privilege: 视图是否有对应的表级权限,1表示有,0表示无。
      11. has_object_privilege: 视图是否有对应的对象级权限,1表示有,0表示无。

      通过这个查询,你可以获取到表comment及其对应的视图描述信息,包括表名、描述、列信息、索引信息、约束信息等。如果你只想查询注释,可以去掉description字段,如下所示:

      sql SELECT * FROM dbms_metadata.view_name v WHERE v.name = 'comment';

      在这个查询中,我们只查询name字段为'comment'的视图名称,即COMMENT。如果表或视图名中包含其他字段,需要根据实际需求选择对应的字段进行查询。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部