隨筆 - 225  文章 - 98  trackbacks - 0
          <2011年12月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          隨筆分類

          相冊

          報表工具廠商們

          搜索

          •  

          最新評論

          閱讀排行榜

          1. Sql server 2000 數據庫本身規定了其數據庫連接URL 的一般格式,如下:

          jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]]

          之間無空格,其中:

          ·         jdbc:sqlserver://(必需)稱為子協議,且為常數。

          ·         serverName(可選)是要連接到的服務器的地址。它可以是 DNS IP 地址,也可以是本地計算機地址 localhost 127.0.0.1。如果未在連接 URL 中指定服務器名稱,則必須在屬性集中指定。

          ·         instanceName (可選)是 serverName 上要連接到的實例。如果未指定,則會連接到默認實例(master)。

          ·         portNumber可選)是 serverName 上要連接到的端口。默認值為 1433。如果使用默認端口,則無需在 URL 中指定端口及其前面的“:”

          ·         property(可選)是一個或多個選項連接屬性。有關詳細信息,請參閱設置連接屬性。可指定該列表中的任何屬性。屬性只能用分號(“;”)分隔,且不允許重復。

          2.  連接實例寫法有:

          A.     使用用戶名和密碼連接到本地計算機上的默認數據庫:

          jdbc:sqlserver://localhost;user=MyUserName;password=*****;

          B.        使用集成身份驗證連接到本地計算機上的默認數據庫:

          jdbc:sqlserver://localhost;integratedSecurity=true;

          C.     連接到遠程服務器上的指定數據庫:

          jdbc:sqlserver://localhost;databaseName=AdventureWorks;integratedSecurity=true;

          D.       連接到遠程服務器上的默認端口:

          jdbc:sqlserver://localhost:1433;databaseName=AdventureWorks;integratedSecurity=true;

           

           

           

          E.     通過指定自定義應用程序名稱進行連接:

          jdbc:sqlserver://localhost;databaseName=AdventureWorks;integratedSecurity=true;applicationName=MyApp;

          3 .以我們設計器中的URL寫法為例詳細說明:

          jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test

          其中

          (1).  databaseName=test 為連接屬性,屬性值只用“;”分割,我們只用了一個,如有多個屬性便可寫成:

          ;databaseName=test;user=MyUserName;password=*****;

          因此在test后加不加“;” 連接效果一樣,即URL寫成

          jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test

          jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test

          都能正確讀取test數據庫

          (2). Sql server 2000 數據庫默認的端口為1433,默認的數據庫實master(應該是安裝時自帶的數據庫)

            URLdatabaseName 前誤加了一“_”空格后,如下:

          jdbc:microsoft:sqlserver://192.168.100.112:1433; databaseName=test

          此時獲取URL時自動判斷空格時URL結束,即獲得的實際URL為:

          jdbc:microsoft:sqlserver://192.168.100.112:1433;

           而此URL連接的為sql server 2000 默認的數據庫 master,所以讀取的就是數據庫master中的表

           

           

           

          結論:

          在寫sql server 2000的數據庫URL時,除其本身已有的特殊字符外,要添加其他特殊字符必須進行轉義,將這些字符包含在大括號中, JDBC 驅動程序將支持對其進行轉義。例如,{;} 將轉義分號。

          轉義的值可以包含特殊字符(特別是“=”“;”“[]”和空格),但不能包含大括號。應將必須進行轉義且包含大括號的值添加到屬性集中。

          方案:

          將我們所用的數據庫改變為默認數據庫是一種方法,但一般存在多個可用的數據庫,所以除sqlserver 本身規定的URL格式外,在我們的程序中最好進行限制,只使用

          jdbc:microsoft:sqlserver://ip:port;databaseName=Databasename

          一種寫法,且中間不能有空格等



          了解Java報表工具就從這里開始
          posted on 2011-12-12 10:30 season 閱讀(185) 評論(0)  編輯  收藏 所屬分類: Java報表—技術知識
          主站蜘蛛池模板: 广灵县| 柘荣县| 青铜峡市| 柳州市| 通辽市| 开平市| 通城县| 兰溪市| 任丘市| 岳阳市| 梓潼县| 满洲里市| 潮安县| 潞西市| 呼伦贝尔市| 白河县| 鄂尔多斯市| 宿州市| 凌源市| 抚顺县| 尼勒克县| 南雄市| 灌阳县| 兰考县| 奉新县| 湖州市| 吉林市| 宁强县| 黄梅县| 武义县| 哈密市| 青田县| 商洛市| 营口市| 肇庆市| 三都| 崇仁县| 蒙山县| 雷波县| 四子王旗| 连城县|