在JDBC中获取列名

mik*_*kis 4 java sql jdbc

我想知道如何判断某个数据库表中是否存在具有特定名称的列.我正在使用JDBC,但如果可以使用纯SQL,那就更好了.但是,解决方案必须独立于DBMS提供者.我想我可以通过查询表的第一行并从中获取ResultSetMetaData来做到这一点,但这假设表中有一行.我希望它也能用于空表.提前致谢!

duf*_*ymo 12

你可以从中获取它们DatabaseMetaData.

DatabaseMetaData meta = connection.getMetaData();
ResultSet rs = meta.getColumns(...);
Run Code Online (Sandbox Code Playgroud)

  • 请注意,当您使用`getColumns(null,null,tablename,null)`来获取表的列时,表名是SENSITIVE. (3认同)