Sql Server的JDBC测试程序与远程连接
感谢博主xwdreamer的大力分享,你所做的会影响很多人。代码示例
在我的机器上安装了多个版本的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> 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远程连接
http://pic002.cnblogs.com/images/2012/80896/2012062423083710.png
2.在程序连接
将上述的连接字符串改成如下格式就可以进行远程连接。
String dbURL = "jdbc:sqlserver://58.196.abc.xx:5419;DatabaseName=InsideTSQL2008";
页:
[1]