<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    afrag  
    記錄學習和成長的歷程
    日歷
    <2007年3月>
    25262728123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567
    統(tǒng)計
    • 隨筆 - 9
    • 文章 - 5
    • 評論 - 2
    • 引用 - 0

    導航

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    文章檔案

    搜索

    •  

    積分與排名

    • 積分 - 10143
    • 排名 - 2382

    最新評論

    閱讀排行榜

    評論排行榜

     

           有同事問到在程序中怎樣知道數(shù)據(jù)庫表中那些字段是主鍵。當時不知道,晚上回來看了看JDK的文檔。

           在使用JDBC來查詢數(shù)據(jù)庫的時候,通常的步驟是:

    1.  注冊驅動程序

    2.  獲取數(shù)據(jù)庫連接

    3.  執(zhí)行查詢語句

    4.  關閉連接。

           在獲得數(shù)據(jù)庫連接后,就可以通過getMetaData()方法來獲取DatabaseMetaData;然后通過DatabaseMetaDatagetPrimaryKeys ()方法來獲取主鍵的信息。

           下面是我做的示例程序,該程序在JBuilder2005oracle8i下通過:
    import java.sql.*;

    import javax.sql.*;

    public class TestJDBC {

        public TestJDBC() {

        }

     

        public static void main(String[] args) throws SQLException {

            Connection con = null;

            Statement st = null;

            ResultSet rst = null;

            try{

                         //注冊數(shù)據(jù)庫驅動程序

                Class.forName("oracle.jdbc.driver.OracleDriver");

                         //獲取數(shù)據(jù)庫連接

                con = DriverManager.getConnection("jdbc:oracle:thin:@10.60.203.80:1521:TestDB","123","123");

                         //獲取主鍵信息

                rst = con.getMetaData().getPrimaryKeys(null,null,"USER");

                         //打印主鍵信息

                if (!rst.isAfterLast()) {

                    rst.next();

                    System.out.println(rst.getString("TABLE_NAME") + "  " +

                                       rst.getString("COLUMN_NAME"));

                }

            }

            catch (Exception e){

                System.out.println(e.getLocalizedMessage());

            }

            finally{

                try{

                                //關閉連接

                    if (rst != null)

                        rst.close();

                    if (con != null)

                        con.close();

                }

                catch (SQLException e){

                    throw e;

                }

            }

     

        }

    }

     

    上面的程序中,在獲取主鍵信息的時候,語句

    rst = con.getMetaData().getPrimaryKeys(null,null,"USER");

    用來獲取主鍵信息。關于該函數(shù)的詳細信息,請參閱JDK的文檔。這里要說的是,在測試中發(fā)現(xiàn)第三個參數(shù)(數(shù)據(jù)庫表名)是大小寫敏感的,如果寫成user是查不到結果的。

    posted on 2006-01-20 10:52 afrag 閱讀(1531) 評論(1)  編輯  收藏 所屬分類: Java 技術
    評論:
    • # re: 在java程序中如何知道數(shù)據(jù)庫表的主鍵  馮烽 Posted @ 2007-03-21 20:27
      泥沙的年代內農(nóng)戶廠農(nóng)村程度地面  回復  更多評論   

     
    Copyright © afrag Powered by: 博客園 模板提供:滬江博客
    主站蜘蛛池模板: 国产一级淫片视频免费看| 99久9在线|免费| 免费亚洲视频在线观看| 亚洲爆乳大丰满无码专区| 青青草国产免费久久久91| 亚洲JIZZJIZZ妇女| 又大又粗又爽a级毛片免费看| 男人免费视频一区二区在线观看| 又粗又硬又黄又爽的免费视频| 免费视频成人国产精品网站| 亚洲视频人成在线播放| a级毛片高清免费视频就| 日韩亚洲人成在线综合日本| 久久久久久成人毛片免费看| 亚洲国产日产无码精品| 一个人免费高清在线观看| 午夜亚洲国产理论片二级港台二级| 亚洲精品tv久久久久久久久久| 99久久免费国产精精品| 色噜噜综合亚洲av中文无码| 久久综合AV免费观看| 猫咪免费人成网站在线观看入口 | 婷婷精品国产亚洲AV麻豆不片 | 99免费精品视频| 亚洲精品一卡2卡3卡三卡四卡| 在线观看免费成人| 一区二区三区免费高清视频| 久久精品国产亚洲av影院| 日韩高清在线免费看| 十八禁视频在线观看免费无码无遮挡骂过 | 人妻18毛片a级毛片免费看| 亚洲V无码一区二区三区四区观看| 1区2区3区产品乱码免费| 亚洲精华国产精华精华液好用| 亚洲国产小视频精品久久久三级| 暖暖在线视频免费视频| 亚洲精品伦理熟女国产一区二区| 国产亚洲精午夜久久久久久| 免费精品国产自产拍在| 精品人妻系列无码人妻免费视频 | 无码人妻AV免费一区二区三区|