Eclipse 3.2中怎樣設(shè)置和測試Oracle和SQL Server的JDBC驅(qū)動程序,以及故障排除_第1頁
Eclipse 3.2中怎樣設(shè)置和測試Oracle和SQL Server的JDBC驅(qū)動程序,以及故障排除_第2頁
Eclipse 3.2中怎樣設(shè)置和測試Oracle和SQL Server的JDBC驅(qū)動程序,以及故障排除_第3頁
Eclipse 3.2中怎樣設(shè)置和測試Oracle和SQL Server的JDBC驅(qū)動程序,以及故障排除_第4頁
Eclipse 3.2中怎樣設(shè)置和測試Oracle和SQL Server的JDBC驅(qū)動程序,以及故障排除_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、本文中我們介紹在Eclipse 3.2中怎樣設(shè)置和測試Oracle和SQL Server的JDBC驅(qū)動程序,以及故障排除。 以下對數(shù)據(jù)庫的操作以SQL Server2000和Oracle 10g為例。 一、 從Oracle和Microsift網(wǎng)站上下載JDBC驅(qū)動程序 n 下載Oracle JDBC驅(qū)動程序 1. 網(wǎng)址: 2. 在Eclipse安裝目錄,例如D:/lecture/JAVA/Eclipse/eclipse下創(chuàng)建路徑: D:/lecture/JAVA/Eclipse/eclipse/jdbc/OracleJDBC/lib。 3. 下載4個java歸檔文件放入其中: 1 ocrs12

2、.jar 2 ojdbc14.jar 3 ojdbc14dms.jar 4 orai18n.jar n 下載SQL Server 2000 Driver for JDBC Service Pack 3,支持JDK 1.4 1. 網(wǎng)址: 2. 執(zhí)行setup.exe安裝SQL Server JDBC驅(qū)動程序。在安裝目錄下有幫助文件。 3. 在Eclipse安裝目錄,例如D:/lecture/JAVA/Eclipse/eclipse下創(chuàng)建路經(jīng): D:/lecture/JAVA/Eclipse/eclipse/jdbc/SQLServerJDBC/lib。 4. 將setup.exe安裝的下面3個j

3、ava歸檔文件放入其中: 1 msbase.jar 2 mssqlserver.jar 3 msutil.jar 二、 在項目庫中導(dǎo)入驅(qū)動程序庫 1. 創(chuàng)建新項目。文件 > 新建 > 項目 > 打開新建項目對話框。 2. 選擇Java項目 > 下一步 > 打開新建Java項目對話框。 3. 輸入項目名JDBCTest > 完成。 4. 打開導(dǎo)航器窗口,檢查新創(chuàng)建的項目。 三、 用于測試連接的代碼示例 n 用于SQL Server的測試連接的代碼示例 安裝了 Microsoft SQL Server 2000 JDBC 驅(qū)動程序后,可以通過兩種方式從您的程序連

4、接到數(shù)據(jù)庫:使用連接 URL,或使用 JNDI 數(shù)據(jù)源。本文介紹如何使用連接 URL 配置和測試數(shù)據(jù)庫連接。 連接到數(shù)據(jù)庫的一種方法是通過 JDBC 驅(qū)動程序管理器,使用 DriverManager 類的 getConnection 方法。使用此方法時,最簡單的方式是使用一個包含 URL、用戶名和密碼的字符串參數(shù)。下面介紹如何從 JDBC 程序載入 Microsoft SQL Server 2000 JDBC 驅(qū)動程序。 創(chuàng)建測試類 1. 右擊新建的項目JDBCTest > 新建 > 包 >打開新建Java包對話框。 2. 在名稱欄輸入testJDBC > 完成。 3.

5、 右擊新建的包testJDBC > 新建 > 類 > 打開新建Java類對話框。 4. 在名稱欄輸入SQLServerJDBCTest >完成。 添加庫 要將JAR文件添加到現(xiàn)有應(yīng)用程序中。 1. 右擊項目JDBCTest > 屬性 > 打開JDBCTest的屬性對話框。 2. 在左邊的窗格中選擇Java構(gòu)建路徑 > 在右邊的窗格中選擇庫標簽 3. 單擊按鈕添加外部JAR > 選擇前面下載的3個SQL Server JDBC驅(qū)動 程序的JAR文件 > 確定。 注冊驅(qū)動程序 注冊驅(qū)動程序的目的是為了通知 JDBC 驅(qū)動程序管理器載入哪個驅(qū)動程

6、序。當(dāng)使用 class.forName 函數(shù)載入驅(qū)動程序時,您必須指定驅(qū)動程序的名稱。以下是 Microsoft SQL Server 2000 JDBC 驅(qū)動程序的名稱: com.microsoft.jdbc.sqlserver.SQLServerDriver 下面的代碼示例演示如何注冊驅(qū)動程序: Driver d = (DriverClass.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver".newInstance(; 傳遞連接 URL 必須以連接 URL 的形式傳遞數(shù)據(jù)庫連接信息。以下是 Microsoft

7、SQL Server 2000 JDBC 驅(qū)動程序的模板 URL。請用您數(shù)據(jù)庫的值替換以下值: jdbc:microsoft:sqlserver:/servername:1433 下面的代碼示例演示如何指定連接 URL: con = DriverManager.getConnection("jdbc:microsoft:sqlserver:/localhost:1433", "userName", "password" 服務(wù)器名稱值可以是 IP 地址或主機名(假定您的網(wǎng)絡(luò)可以將主機名解析為 IP 地址)。您可以通過對主機名執(zhí)行 PIN

8、G 命令來進行測試,驗證是否可以接收到響應(yīng),以及響應(yīng)的 IP 地址是否正確。 服務(wù)器名稱后面的數(shù)字值是數(shù)據(jù)庫偵聽的端口號。上文列出的值是示例默認值。確保用您的數(shù)據(jù)庫使用的端口號替換該值。 要獲取連接 URL 參數(shù)的完整列表,請參見 Microsoft SQL Server 2000 JDBC 驅(qū)動程序 HTML 幫助,或參見聯(lián)機指南。請參見“連接字符串屬性”一節(jié)。 下面的代碼示例嘗試連接到數(shù)據(jù)庫,并顯示數(shù)據(jù)庫名稱、版本和可用編目。請用您服務(wù)器的值替換代碼中的服務(wù)器屬性: package testJDBC; public class SQLServerJDBCTest private java.

9、sql.Connection con = null; private final String url = "jdbc:microsoft:sqlserver:/" private final String serverName= "localhost" private final String portNumber = "1433" private final String databaseName= "pubs" private final String userName = "sa" pr

10、ivate final String password = "wyfd" / 告訴驅(qū)動器使用服務(wù)器端游標, / 它允許在一個連接上的多個活動語句。 private final String selectMethod = "cursor" private java.sql.Connection getConnection( try / A. 注冊 SQL Server JDBC 驅(qū)動程序 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver" / B. 創(chuàng)建新數(shù)據(jù)庫連接

11、con = java.sql.DriverManager.getConnection(getConnectionUrl(,userName,password; if(con!=null System.out.println("Connection Successful!" catch(Exception e e.printStackTrace(; System.out.println("Error Trace in getConnection( : " + e.getMessage(; return con; private String getConn

12、ectionUrl( return url +serverName+":"+portNumber+"databaseName="+databaseName+"selectMethod="+selectMethod+"" private void closeConnection( try if(con!=null con.close(; con=null; catch(Exception e e.printStackTrace(; /* 顯示驅(qū)動器屬性,數(shù)據(jù)庫詳細信息 */ public void displayDb

13、Properties( java.sql.DatabaseMetaData dm = null; java.sql.ResultSet rs = null; try con= this.getConnection(; if(con!=null dm = con.getMetaData(; System.out.println("驅(qū)動器信息:" System.out.println("/t驅(qū)動器名字: "+ dm.getDriverName(; System.out.println("/t驅(qū)動器版本: "+ dm.getDriverVe

14、rsion (; System.out.println("/n數(shù)據(jù)庫信息: " System.out.println("/t數(shù)據(jù)庫名字: "+ dm.getDatabaseProductName(; System.out.println("/t數(shù)據(jù)庫版本: "+ dm.getDatabaseProductVersion(; System.out.println("顯示可用的數(shù)據(jù)庫目錄:" rs = dm.getCatalogs(; while(rs.next( System.out.println("/t

15、catalog: "+ rs.getString(1; /rs = dm.getTables("ckgl",null,"ckgl","TABLE".getCatalogs(; while(rs.next( System.out.println("/tcatalog: "+ rs.getString(1; rs.close(; rs = null; closeConnection(; else System.out.println("Error: No active Connection"

16、; catch(Exception e e.printStackTrace(; dm=null; public static void main(String args SQLServerJDBCTest sQLServerJDBCTest = new SQLServerJDBCTest(; sQLServerJDBCTest.displayDbProperties(; 如果此代碼運行成功,其輸出結(jié)果應(yīng)類似于以下內(nèi)容: IWAV0055I Java Bean testJDBC.SQLServerJDBCTest started with the main method Connection S

17、uccessful! 驅(qū)動器信息: 驅(qū)動器名字: SQLServer 驅(qū)動器版本: 2.2.0040 數(shù)據(jù)庫信息: 數(shù)據(jù)庫名字: Microsoft SQL Server 數(shù)據(jù)庫版本: Microsoft SQL Server 2000 - 8.00.2039 (Intel X86 May 3 2005 23:18:38 Copyright (c 1988-2003 Microsoft Corporation Personal Edition on Windows NT 5.1 (Build 2600: Service Pack 2 顯示可用的數(shù)據(jù)庫目錄: catalog: ckgl cata

18、log: coal catalog: master catalog: msdb catalog: Northwind catalog: pubs catalog: student catalog: tempdb 有關(guān)排除連接故障的基本信息 下面是嘗試連接到 SQL 服務(wù)器時常見的錯誤信 息: java.sql.SQLException:MicrosoftSQLServer 2000 Driver for JDBCSQLServerLogin failed for user 'user'.Reason:Not associated with a trusted SQL Serve

19、r connection. 如果將 SQL Server 2000 的驗證模式設(shè)置為“Windows 驗證模式”,則會出現(xiàn)此錯誤信息。Microsoft SQL Server 2000 JDBC 驅(qū)動程序不支持使用 Windows NT 驗證進行連接。您必須將 SQL Server 的驗證模式設(shè)置為“混合模式”,該模式既允許 Windows 驗證,也允許 SQL Server 驗證。 java.sql.SQLException:MicrosoftSQLServer 2000 Driver for JDBCThis version of the JDBC driver only supports

20、 Microsoft SQL Server 2000. You can either upgrade to SQL Server 2000 or possibly locate another version of the driver. 當(dāng)您嘗試連接到 SQL Server 2000 以前的 SQL Server 版本時,則會出現(xiàn)此錯誤信息。Microsoft SQL Server 2000 JDBC 驅(qū)動程序僅支持與 SQL Server 2000 進行連接。 n 用于Oracle的測試連接的代碼示例 import java.sql.Connection; import java.sql.

21、DatabaseMetaData; import java.sql.DriverManager; import java.sql.SQLException; package testJDBC; import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverManager; import java.sql.SQLException; public class OracleJDBCTest public static void main(String args throws SQLExcept

22、ion, ClassNotFoundException / A. 注冊 Oracle JDBC 驅(qū)動程序。下面兩種方法都可以 /DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver(; Class.forName("oracle.jdbc.driver.OracleDriver" / B. 創(chuàng)新新數(shù)據(jù)庫連接 Connection conn = DriverManager.getConnection("jdbc:oracle:thin:localhost:1521:oract", "hr", "hr" / C. 取得連接數(shù)據(jù)(元數(shù)據(jù) DatabaseMetaData md = conn.getMeta

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論