參考文獻:
代碼示例
在我的機器上安裝了多個版本的sqlserver數據庫,那么如何區分這兩個數據庫服務器呢。這就要用到前一篇博客中提到的數據庫服務端口號,詳細見參考2。
此處端口號5419對應的是sqlserver2008服務器,端口號5413對應的是sqlserver2012服務器。具體的數據庫名稱在連接字符串的后面給出。
package edu.sjtu.erplab.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class SqlServerJDBC { public static void main(String args[]) { String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; // 加載JDBC驅動 //SQL SERVER 2008:使用localhost,127.0.0.1和本機實際ip192.168.0.101都可以連接SQL SERVER 2008 //String dbURL = "jdbc:sqlserver://localhost:5419;DatabaseName=InsideTSQL2008"; //String dbURL = "jdbc:sqlserver://127.0.0.1:5419;DatabaseName=InsideTSQL2008"; //String dbURL = "jdbc:sqlserver://192.168.0.101:5419;DatabaseName=InsideTSQL2008"; //SQL SERVER 2012:端口號從原來的5419變成了5413,數據庫名稱變成了TSQL2012 //跟上述SQL SERVER 2008一樣,可以使用localhost,127.0.0.1和192.168.0.101 //String dbURL = "jdbc:sqlserver://localhost:5413;DatabaseName=TSQL2012"; //String dbURL = "jdbc:sqlserver://127.0.0.1:5413;DatabaseName=TSQL2012"; String dbURL = "jdbc:sqlserver://192.168.0.101:5413;DatabaseName=TSQL2012"; String userName = "sa"; // 用戶名 String userPwd = "sa12345"; // 密碼 try { // 加載SQLSERVER JDBC驅動程序 Class.forName(driverName); //建立數據庫連接 Connection connect = DriverManager.getConnection(dbURL, userName,userPwd); Statement stmt = connect.createStatement(); ResultSet rs = stmt.executeQuery("select * from HR.Employees;"); while (rs.next()) { System.out.println(rs.getString("lastname")); } } catch (ClassNotFoundException e) { System.out.print("Error loading SQLServer Driver!"); e.printStackTrace(); } catch (Exception e) { System.out.print("get data error!"); e.printStackTrace(); } } }
通過上述代碼示例,我們成功連接到sqlserver數據庫,並輸出查詢結果。
遠程連接sqlserver(PS:2012-6-24)
假設當前機器的ip地址位58.196.cba.yy,而sqlserver數據庫安裝在服務器上,服務器地址為58.196.abc.xx,數據庫服務端口號為5419。
1.使用SQL Server Management Studio遠程連接
2.在程序連接
將上述的連接字符串改成如下格式就可以進行遠程連接。
String dbURL = "jdbc:sqlserver://58.196.abc.xx:5419;DatabaseName=InsideTSQL2008";