【Java/JDBC】利用Metadata获取Oracle表字段的注释
前篇:https://www.cnblogs.com/heyang78/p/11991896.html
代码:
package com.hy.lab.colcomment; import java.sql.*; import java.util.Properties; public class Test { /** * 取注释的连接有其特殊性 * * @return */ public static Connection getConnection() { Connection conn = null; try { Class.forName("oracle.jdbc.driver.OracleDriver"); String url = "jdbc:oracle:thin:@127.0.0.1:1521:orcl"; Properties pro = new Properties(); pro.setProperty("user", "luna"); pro.setProperty("password", "1234"); pro.put("remarksReporting", "true");// 注意这里不可或缺 conn = DriverManager.getConnection(url, pro); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } return conn; } public static void main(String[] args) { try (Connection conn = getConnection()) { DatabaseMetaData dbmd = conn.getMetaData(); ResultSet rs = dbmd.getColumns(null, "%", "emp524".toUpperCase(), "%"); while (rs.next()) { String colName = rs.getString("COLUMN_NAME"); String colRemarks = rs.getString("REMARKS"); String pattern = "Column name:%s & remarks:%s"; System.out.println(String.format(pattern, colName, colRemarks)); } } catch (SQLException e) { e.printStackTrace(); } } }
输出:
Column name:ID & remarks:ID Column name:NAME & remarks:姓名 Column name:AGE & remarks:年龄
建表充值添加注释的SQL:
create table emp524( id number(12), name nvarchar2(20), age number(3), primary key(id) ); COMMENT ON TABLE emp524 IS '雇员表'; COMMENT ON COLUMN emp524.id IS 'ID'; COMMENT ON COLUMN emp524.name IS '姓名'; COMMENT ON COLUMN emp524.age IS '年龄'; insert into emp524(id,name) values ('1','andy');
END
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
2020-05-24 递归向下解析算术表达式(四)
2020-05-24 递归向下解析算术表达式(三)