(4) 获取数据库原始信息

核心代码
dbmeta.jsp

  
  <%
    String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";
    String connectDB="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=ShopSystem";
    try{
        Class.forName(JDriver);
    }catch(ClassNotFoundException e){
        System.out.println("加载数据库失败");
        System.exit(0);
    }
    
    try{
        String user="sa";
        String password="xuelong";
        Connection con=DriverManager.getConnection(connectDB, user, password);
        System.out.println("数据库连接成功");
        
        //获取数据库原始信息
        DatabaseMetaData dmd=con.getMetaData();
        out.println("

ShopSystem 数据库信息

"); out.println("连接到URL"+dmd.getURL()+"
"); out.println("驱动程序名:"+dmd.getDriverName()+"
"); out.println("驱动程序版本:"+dmd.getDriverVersion()+"
"); out.println("最大连接数:"+dmd.getMaxConnections()+"
"); out.println("数据库名:"+dmd.getDatabaseProductName()+dmd.getDatabaseProductVersion()+"
"); out.println("数据库是否支持外部连接"); if(dmd.supportsOuterJoins()) out.println("是"); else out.println("否"); //创建Statement和Resultset对象,将结果集的原始信息存放在rsmd中 Statement stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); ResultSet rs=stmt.executeQuery("select * from admin"); ResultSetMetaData rsmd =rs.getMetaData(); //使用表格,显示表的基本信息 String strClmname="列名"; String strClmtype="类型"; String strClmsize="大小"; String strNull="是否为空"; String strIncrease="是否自动增长"; for(int i=1;i<=rsmd.getColumnCount();i++){ strClmname +=""+rsmd.getColumnName(i)+""; strClmtype +=""+rsmd.getColumnTypeName(i)+""; strClmsize +=""+rsmd.getColumnDisplaySize(i)+""; strNull +=""+rsmd.isNullable(i)+""; strIncrease +=""+rsmd.isAutoIncrement(i)+""; } strClmname+=""; strClmtype+=""; strClmsize+=""; strNull+=""; strIncrease+=""; out.println("

admin 表信息

"); out.println(""); out.println(strClmname); out.println(strClmtype); out.println(strClmsize); out.println(strNull); out.println(strIncrease); out.println("
"); stmt.close(); if(con!=null) con.close(); }catch(SQLException e){ out.println(e.getMessage()); } %>

你可能感兴趣的:((4) 获取数据库原始信息)