留下點記錄,知道自己曾走過...
Java連接SQL Server 常用的有兩種方式,一種是通過odbc,一種是通過jdbc,其實自己很早以前就練習過,但是由於平時開發用的都是MySQL數據庫,對SQL Server忽略了,一下子去用它竟還有些不習慣,害得我弄了半天才弄好,哎……這裡就留下一個記錄,以後如果忘記了還可以回來看看。
一、先來說下odbc連接SQL Server數據庫的方式:
這種方式應該說是挺簡單的吧,看看下面的步驟不信你不會:
首先打開程序-->控制面板-->管理工具-->數據源,可以看到下面的窗口:
點擊 添加:添加一個odbc驅動,如圖選擇SQL Server,點擊完成
之後,為你將要建立的ODBC驅動添加一個名字,並選擇服務器,描述是為了方便你記憶,可寫可不寫。這裡我們暫且如圖填寫:(注:服務器就是你所安裝的SQL Server 服務,跟我的選擇的不一定一樣。)
點擊下一步:選擇身份驗證,此處選擇默認情況。點擊下一步:
選擇你要連接的數據庫:點擊下一步:
默認選擇,點擊完成
可以點擊測試數據源,看看連接是否正確。
點擊確定,你就會發現你所建立的odbc驅動已經建立好了,如圖:
然後就可以用一下代碼進行測試了:
代碼如下:
/**
* Conn.Java * Odbc SqlServer Connection * Copyright (c) 2007 by Dr. Herong Yang. All rights reserved. import Java.sql.*;
public class Conn{
public static void main(String [] args) {
Connection con = null;
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ;
System.out.println("加載驅動成功.......");
// Connect with a full url string
con = DriverManager.getConnection("jdbc:odbc:ODBC_SQL_SERVER;user=sa;passWord=891004");
System.out.println("First connection ok.");
con.close(); // Connect with a url string and propertIEs
java.util.PropertIEs prop = new Java.util.PropertIEs();
prop.put("user", "sa");
prop.put("passWord", "891004");
con = DriverManager.getConnection("jdbc:odbc:ODBC_SQL_SERVER",
prop);
System.out.println("Second connection ok.");
con.close();
} catch (Exception e) {
System.err.println("Exception: "+e.getMessage()); }
}
運行結果:
---------------------------------以上就是利用odbc的方式連接SQL Server數據庫----------------------------
二、使用jdbc的方式連接SQL Server數據庫
使用這種方式連接SQL Server數據庫,首先需要安裝sq3的補丁包,我就是由於沒有安裝這個補丁包而浪費了很多的時間,以後可記住這個教訓了,然後就是去網上搜索下載sql server 的驅動jar包。這裡的驅動jar包對於sql server 2000和2005還有所不同,首先說SQL Server2000。它所需要的jar包有三個:分別是msbase.jar;mssqlserver.jar;msutil.jar三個jar包,用“添加外部jar”的方式將他們導入到項目中,然後使用下面代碼進行測試就可以了:
代碼如下:
import Java.sql.*;
import Java.sql.*;
/*
* jdbc 連接mssql / * public class Conn {
public static void main(String[] srg) {
// SQL Server 2000
String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver"; // 加載JDBC驅動
String dbURL = "jdbc:microsoft:sqlserver://127.0.0.1:1433; DatabaseName=tavi";
// 連接服務器和數據庫
String userName = "sa"; String userPwd = ""; Connection dbConn;
try {
Class.forName(driverName);
System.out.println("......");
dbConn = DriverManager.getConnection(dbURL,userName,userPwd);
System.out.println("ConnectionSuccessful!");
// 如果連接成功 控制台輸出Connection Successful!
} catch (Exception e) {
System.out.println("error");
e.printStackTrace(); }
}
運行結果:......
ConnectionSuccessful!
如果是sql server2005則又有所不同,對於sql server2005 首先當然也需要安裝sp3補丁,然後也是驅動,不過對於SQL Server2005 驅動只有一個,就是sqljdbc.jar;把它導入到項目中,然後用以下代碼進行測試:
import Java.sql.*;
/* jdbc 連接mssql */
public class Conn {
public static void main(String[] srg) {
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; // 加載JDBC驅動
String dbURL = "jdbc:sqlserver://127.0.0.1:1433; DatabaseName=tavi"; // 連接服務器和數據庫
String userName = "sa"; // 默認用戶名
String userPwd = ""; // 密碼
Connection dbConn;
try {
Class.forName(driverName);
System.out.println("......");
dbConn = DriverManager.getConnection(
"jdbc:sqlserver://localhost:1433;" + "DatabaseName=pubs",
"sa", "891004");
System.out.println("Connection Successful!"); // 如果連接成功 控制台輸出Connection Successful!
} catch (Exception e) {
System.out.println("error");
e.printStackTrace(); } 運行成功
--------------------以上就是利用jdbc的方式連接數據庫---------------------
以上 用jdbc連接SQL Server 2000和2005的方式 驅動類和dburl都不一樣,注意區分!!!