九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
jdbc元數(shù)據(jù)入門(mén)-1(DatabaseMetaData)
jdbc元數(shù)據(jù)入門(mén)-1(DatabaseMetaData)  
  
jdbc到了版本3以后加入元數(shù)據(jù)的功能,有了jdbc元數(shù)據(jù)就可以很方便的獲取數(shù)據(jù)庫(kù)相關(guān)的信息,如果大家了解這項(xiàng)功能,就會(huì)發(fā)現(xiàn)操作數(shù)據(jù)庫(kù)的時(shí)候會(huì)更得心應(yīng)手,同時(shí)也可以開(kāi)發(fā)出比以前更加自動(dòng)化的程序.下面開(kāi)始第一部分的教程.
獲取最基本的數(shù)據(jù)庫(kù)信息(數(shù)據(jù)庫(kù)中的表):
public static void showTables(Connection connection) throws Exception {
    DatabaseMetaData meta = connection.getMetaData(); //獲取數(shù)據(jù)庫(kù)連接的元數(shù)據(jù)
    //查詢連接的所有Table(如果需要查詢視圖等,可以在最后的數(shù)組中添加VIEW...,依此類推)
    ResultSet rsTable = meta.getTables(null, null, null, new String[] { "TABLE" });
    //獲取到的數(shù)據(jù)是以ResultSet形式返回
    while (rsTable.next()) {
        System.out.println(rsTable.getString(1)); //第一列是Database名稱
        System.out.println(rsTable.getString(2)); //第二列是用戶名稱(有的表可能沒(méi)有對(duì)應(yīng)的用戶)
        System.out.println(rsTable.getString(3)); //第三列就是表名稱
    }
}
執(zhí)行上面的方法就可以將Connection中所有的表信息全部顯示出來(lái),這就是元數(shù)據(jù)的入門(mén)知識(shí).當(dāng)然這也是分析數(shù)據(jù)庫(kù)連接信息的第一步.接下來(lái)看看如何獲取Table的主外鍵信息.
public static List<String> getPrimaryKeys(Connection connection, String tableName) throws Exception {
    ArrayList<String> keyList = new ArrayList<String>();
    DatabaseMetaData meta = connection.getMetaData();
    ResultSet rsKey = meta.getPrimaryKeys(null, null, tableName); //獲取制定表的主鍵列信息
    while (rsKey.next())
        keyList.add(rsKey.getString(4));
    return keyList;
}
上面的方法可以獲取一個(gè)表的所有主鍵列的名稱列表

public static List<String> getImportedKeys(Connection connection, String tableName) throws Exception {
    ArrayList<String> keyList = new ArrayList<String>();
    DatabaseMetaData meta = connection.getMetaData();
    ResultSet rsKey = meta.getImportedKeys(null, null, tableName);
    while (rsKey.next())
        keyList.add(rsKey.getString(8));
    return keyList;
}
上面的方法可以獲取一個(gè)表中是外鍵列的名稱列表

public static List<String> getExportedKeys(Connection connection, String tableName) throws Exception {
    ArrayList<String> keyList = new ArrayList<String>();
    DatabaseMetaData meta = connection.getMetaData();
    ResultSet rsKey = meta.getExportedKeys(null, null, tableName);
    while (rsKey.next())
        keyList.add(rsKey.getString(4));
    return keyList;
}
上面的方法可以獲取一個(gè)表中是其他表的外鍵的列的名稱列表
到這里大家已經(jīng)知道如何通過(guò)元數(shù)據(jù)獲取一些表的信息了,那么這一部分也就完成,接下來(lái)的文章會(huì)繼續(xù)深入了解jdbc的元數(shù)據(jù).
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
通過(guò)JDBC的DatabaseMetaData獲取數(shù)據(jù)庫(kù)元數(shù)據(jù)
JSON轉(zhuǎn)SQL小工具源碼分享
使用JDBC連接數(shù)據(jù)庫(kù)獲取表字段的注釋信息
HIve的JavaAPI操作
java-如何在不使用Apache DDLUtils的情況下使用JDBC將模式從一個(gè)數(shù)據(jù)庫(kù)復(fù)制到另一個(gè)數(shù)據(jù)庫(kù)?
獲得手機(jī)通訊錄聯(lián)系人信息
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服