<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: 博客園 模板提供:滬江博客
    主站蜘蛛池模板: 亚洲精品在线免费看| 久久久久亚洲av无码专区蜜芽| 久久精品亚洲AV久久久无码| 精品国产sm捆绑最大网免费站| 亚洲好看的理论片电影| 99久9在线|免费| 亚洲成人一级电影| 最新中文字幕免费视频| 亚洲国产精品18久久久久久| 亚洲国产成人久久笫一页| 一级一级一级毛片免费毛片| 久久精品亚洲男人的天堂| 国产一区二区免费视频| 久久久久亚洲av无码专区| h视频在线免费看| 中文字幕乱码亚洲无线三区| 爽爽日本在线视频免费| 免费人成动漫在线播放r18 | 亚洲综合婷婷久久| 18禁男女爽爽爽午夜网站免费| 亚洲国产精品久久网午夜| 国产高清在线精品免费软件| 成人a毛片视频免费看| 亚洲AV无码久久精品狠狠爱浪潮| 亚洲大片免费观看| 亚洲AV性色在线观看| 国产成人亚洲综合无码| 啦啦啦完整版免费视频在线观看 | 国产成人精品日本亚洲专| 免费高清av一区二区三区| 一个人看的免费观看日本视频www| 亚洲国产精品无码一线岛国| 精品香蕉在线观看免费| 国产亚洲精品免费| 亚洲AV无码国产精品色午友在线| 成人爽A毛片免费看| 中国国语毛片免费观看视频| 亚洲一级片在线观看| 亚洲欧洲一区二区三区| 成人浮力影院免费看| 午夜肉伦伦影院久久精品免费看国产一区二区三区 |