Java利用ODBC 串連資料庫
來源:互聯網
上載者:User
Microsoft SQL Server 2000 sp4 簡體中文版:
http://www.crsky.com/soft/5814.htmlsql server 2000 driver for jdbc :
http://www.microsoft.com/downloads/results.aspx?displaylang=en&freeText=sql+server+2000+driver+for+jdbc#
1.下載SQL Server 2000 driver for JDBC。該驅動截止目前有四個版本,建議下載最新的SP3版,SQL Server 2000 Driver for JDBC Service Pack 3:http://www.microsoft.com/downloads/details.aspx?FamilyID=07287b11-0502 -461a-b138-2aa54bfdc03a&DisplayLang=en#filelist 該驅動安裝成功後,請將安裝目錄下的lib目錄下的三個.jar檔案加到CLASSPATH中;如果你使用的是JBuilder或Eclipse,將這三個檔案根據IDE的提示加到工程中也可。
2. 1433連接埠問題 在sp2下,防火牆預設的是關閉這個連接埠的。需要自己去開啟。控制台-防火牆-例外,分別填加TCP 1433連接埠UDP 1433連接埠
3.升級你的SQL Server 2000,為其打上最新的補丁。 這一步可能不是必需的,因作業系統環境而定,在不打補丁的情況,有時可以正常串連,有時卻不能,所以建議還是安裝最新的SQL Server 2000補丁(SP4)和JDBC驅動(SP3)。 如果你的程式在運行時提示:Error establishing socket,一般情況下,打上SQL Server 2000的補丁就可解決。 4.在 項目名上 右鍵 屬性,選擇“Java構建路徑”,點擊“庫”,選擇“添加外部”,選擇路徑“系統硬碟符:/Program Files/Microsoft SQL Server 2000 Driver for JDBC/lib” 將“msbase.jar、 mssqlserver.jar、 msutil.jar”三個包。
5.驅動的載入方法 在建立串連之前,要先載入SQL Server 2000 JDBC的驅動,代碼形式如下: Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 在此注意,forName方法的參數字串必須完全相同於以上內容,大小寫是區分的,其實這個串就是驅動類的完整名稱:包名+類名。
6.獲得一個串連 在操作資料庫之前,要先獲得與資料庫的一個串連,使用如下代碼格式: DriverManager.getConnection(連接字串, 登入使用者名稱, 登入密碼); 例: DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=pubs", "sa", ""); 在此處關鍵的是連接字串的內容,localhost部分即伺服器的名字,可以更改;1433部分為SQL Server使用的連接埠號碼,根據實際情況修改即可;DatabaseName即為要串連的資料庫的名字,在此注意DatabaseName之前的是分號,而不是冒號。
7.代碼執行個體 package smxc; import java.sql.*; public class Sql_conn { public static void main(String[] args) { String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver"; String dbURL = "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=smxc"; //smxc資料庫名稱 String userName = "sa"; String userPwd = "sa"; Connection Sql_conn ; try { Class.forName(driverName); Sql_conn = DriverManager.getConnection(dbURL, userName, userPwd); System.out.println("Connection Successful!"); } catch (Exception e) { e.printStackTrace(); } } }
1、Oracle8/8i/9i資料庫(thin模式)
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl為資料庫的
SID String user="test"; String password="test"; Connection conn= DriverManager.getConnection(url,user,password);
2、MySQL資料庫
Class.forName("org.gjt.mm.mysql.Driver").newInstance(); String url ="jdbc:mysql://localhost/myDB?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1" //myDB為資料庫名
Connection conn= DriverManager.getConnection(url);