zoukankan      html  css  js  c++  java
  • Java_jdbc 基础笔记之十四 数据库连接(元数据)数据库信息及连接信息

    public class MetaDatatest {
        /**
         * DatabaseMetaData 是描述 数据库的元数据对象 可以由Connection得到
         */
        @Test
        public void testDatabaseMetaData() {
            Connection conn = null;
            ResultSet rs = null;
            try {
                conn = JDBCTools.getConnection();
                DatabaseMetaData data = conn.getMetaData();
                // 可以得到数据库本身的一些基本信息
                // 1、得到数据库的版本号
                int version = data.getDatabaseMajorVersion();
                System.out.println(version);
                // 2. 德奥数据库的用户名
                String user = data.getUserName();
                System.out.println(user);
                // 3、得到MySQL中有哪些数据库
                rs = data.getCatalogs();
                while (rs.next()) {
                    System.out.println(rs.getString(1));
                }
    
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                JDBCTools.close(rs, null, conn);
            }
    
        }
    
        // ========================================================
        /**
         * ResultSetMetaData:描述结果集的元数据 可以得到结果集的基本信息: 结果集中有哪些列,列名,列的别名等。。。
         * 
         */
        @Test
        public void testResultSetMetaData() {
            Connection conn = null;
            PreparedStatement ps = null;
            ResultSet rs = null;
            try {
                conn = JDBCTools.getConnection();
                String sql = "SELECT id,name customersName,email custEMAIL,birth FROM customers";
                ps = conn.prepareStatement(sql);
                rs = ps.executeQuery();
                // 1 得到ResultSetMetaData对象
                ResultSetMetaData rmsd = rs.getMetaData();
                // 2得到列的个数
                int columnCount = rmsd.getColumnCount();
                System.out.println(columnCount);
                for (int i = 0; i < columnCount; i++) {
                    // 3得到列名
                    String columnName = rmsd.getColumnName(i + 1);
    
                    // 4.得到列的别名
                    String columnLabel = rmsd.getColumnLabel(i + 1);
                    System.out.println(columnName + "   " + columnLabel);
                }
    
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                JDBCTools.close(rs, ps, conn);
    
            }
    
        }
    
    }

    转:  https://blog.csdn.net/YL1214012127/article/details/48374599

  • 相关阅读:
    sublime text 2安装及使用
    C陷阱与缺陷之语法陷阱
    上门洗车APP --- Androidclient开发 之 项目结构介绍
    编写语法分析程序
    TCP header
    boost事件处理
    TP-LINK无线路由器WR340G+ 54M支持WDS
    300M无线路由器 TL-WR842N
    python 2.7 支持dict comprehension
    100M 宽带办理
  • 原文地址:https://www.cnblogs.com/fps2tao/p/12027406.html
Copyright © 2011-2022 走看看