Oracle数据库修改、清除数据库所有表及字段的注释备注信息
1、查询表相关注释信息
--查询当前连接数据库中尚未设置表注释的表 SELECT T.* FROM( --查询当前连接数据库的所有表注释 SELECT * FROM USER_TAB_COMMENTS T WHERE T.TABLE_NAME IN( --当前填写数据库的所有表 SELECT T.TABLE_NAME FROM ALL_TABLES T WHERE T.OWNER = UPPER('NARADA_MES') )
)T WHERE T.COMMENTS IS NULL;
2、设置表注释信息 参考
--错误 如此批量更新表注释 不会成功,因为 USER_TAB_COMMENTS 为视图,不可以直接更改数据 只能通过拼接 COMMENT ON TABLE TAB1 IS 'TAB1' UPDATE USER_TAB_COMMENTS T SET T.COMMENTS = T.TABLE_NAME; --正确 通过拼接 COMMENT ON TABLE TAB1 IS 'TAB1' 设置数据库中尚未设置表注释的表 SELECT 'COMMENT ON TABLE '||T.TABLE_NAME||' IS '''||T.TABLE_NAME||''';' FROM( --查询当前连接数据库的所有表注释 SELECT * FROM USER_TAB_COMMENTS T WHERE T.TABLE_NAME IN( --当前填写数据库的所有表 SELECT T.TABLE_NAME FROM ALL_TABLES T WHERE T.OWNER = UPPER('数据库名') ) )T WHERE T.COMMENTS IS NULL;
3、查询列注释相关信息 参考
--查询当前用户所有表的列注释 SELECT * FROM USER_COL_COMMENTS; --查询所有表的所有列注释 SELECT * FROM ALL_COL_COMMENTS; --可能不存在该视图 SELECT * FROM DBA_COL_COMMENTS;
4、清除 表 / 列 注释
--清除所有表注释 SELECT 'COMMENT ON TABLE '||T.TABLE_NAME||' IS '''';' FROM ALL_TABLES T WHERE T.OWNER = UPPER('数据库名') --清除所有列注释 SELECT 'COMMENT ON COLUMN '||T.TABLE_NAME||'.'||T.COLUMN_NAME||' IS '''';' FROM USER_COL_COMMENTS T;
本文作者:Journey&Flower
本文链接:https://www.cnblogs.com/JourneyOfFlower/p/15016793.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步