JAVA基础 之 DatabaseMetaData
程序员文章站
2022-03-02 08:48:11
...
Java基础专栏上线啦~ 传送门
概述:
1.DatabaseMetaData:连接对应的数据库信息对象
2.通过con.getMetaData();方法来获得
3.不多说看例子
package com.cxy.jdbc; import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; /** * @author cxy */ public class DatabaseMetaDataTest { public static void main(String[] args) throws Exception { Class.forName("com.mysql.jdbc.Driver"); try ( Connection con=DriverManager.getConnection("jdbc:mysql://localhost/dbtest", "root", "root"); ) { DatabaseMetaData dmd=con.getMetaData(); System.out.println("当前数据库是:"+dmd.getDatabaseProductName()); System.out.println("当前数据库版本:"+dmd.getDatabaseProductVersion()); System.out.println("当前数据库驱动:"+dmd.getDriverVersion()); System.out.println("当前数据库URL:"+dmd.getURL()); System.out.println("当前数据库是否是只读模式?:"+dmd.isReadOnly()); System.out.println("当前数据库是否支持批量更新?:"+dmd.supportsBatchUpdates()); System.out.println("当前数据库是否支持结果集的双向移动(数据库数据变动不在ResultSet体现)?:"+dmd.supportsResultSetType(ResultSet.TYPE_SCROLL_INSENSITIVE)); System.out.println("当前数据库是否支持结果集的双向移动(数据库数据变动会影响到ResultSet的内容)?:"+dmd.supportsResultSetType(ResultSet.TYPE_SCROLL_SENSITIVE)); System.out.println("========================================"); ResultSet rs=dmd.getTables(null, null, "%", null); System.out.println("表名"+","+"表类型"); while(rs.next()) { System.out.println(rs.getString("TABLE_NAME")+","+rs.getString("TABLE_TYPE")); } System.out.println("========================================"); rs=dmd.getPrimaryKeys(null, null, "t_student"); while(rs.next()) { System.out.println(rs.getString(3)+"表的主键是:"+rs.getString(4)); } System.out.println("========================================"); rs=dmd.getColumns(null, null, "t_student","%"); System.out.println("t_student表包含的字段:"); while(rs.next()) { System.out.println(rs.getString(4)+" "+rs.getString(6)+"("+rs.getString(7)+");"); } System.out.println("========================================"); }catch(SQLException e) { System.out.println("数据库操作出现异常"); } } }
相关连接:
声明:
1.原创文章,转载请标明并加本文连接。
2.文章反映个人愚见,如有异议欢迎讨论指正