环境搭配以及连接方法:
原文:http://www.cnblogs.com/chlyA-F/p/6075675.html
1.从微软官网下载JDBC驱动包
sqljdbc_4.0.2206.100_chs.exe,双击解压文件到指定目录,我的指定目录是:
C:\Program Files\Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc_4.0\chs
下面是解压后的文件,
如果JDK版本低于6.0,则需使用sqljdbc.jar;
6.0以上版本使用sqljdbc4.jar,使用sqljdbc4.jar版本好处可以省略
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")这一段代码。
2.将sqljdbc4.jar所在文件路径添加到系统环境变量CLASSPATH中;
3.打开Sql Server 2008配置管理器(Sql Server Configuration Manager)
启动TCP/IP端口,并右击选择属性,将TCP地址端口设为1433(端口值可以自己定义范围在0~65535);
3.打开DOS命令行界面,输入netstat -a 命令查看开启了哪些端口:
netstat -a查看开启哪些端口
netstat -n查看端口的网络连接情况
netstat -v查看正在进行的工作
netstat -p tcp/ip查看某协议使用情况
netstat -s 查看正在使用的所有协议使用情况
4.连接数据库:
(1)用windows验证方式连接数据库:这种方式可能要求管理员权限,至少部分情况下会导致无法正常访问数据库。因此不建议采用!
(2)用sql server身份验证方式连接数据库。
如果安装sql server 2008 时是以windows身份验证安装的,没有为sql server 2008添加sql sever身份用户,需要首先添加用户:
打开Microsoft SQL Server Management Studio并以windows验证方式登录,左侧的对象资源管理器->安全性->登录名,右击sa->属性,为sa用户添加密码,选择sql server身份验证,在“状态”项中授予连接到数据库和登录启用;
右击对象资源管理器的根节点,选择属性->安全性->sql server和windows身份验证模式,然后就这样
创建了以sql server身份验证的用户sa。
我0创建的sa用户密码是"12345";
5.将sqljdbc4.jar导入到eclipse的项目中:
有两种方法导入jar包,第一种是先把jar包放在项目的目录下,通过添加jar包,是使用相对地址的,这样把项目复制到其它电脑也可以用
第二种方法是导入外部的jar包,是绝对地址,如果项目要复制到其它电脑又要重新导入
建议使用第一种方法!
1.右击要导入jar包的项目工程,点击properties
2.左边选择java build path,右边选择libraries
3.选择add External jars
4.选择jar包的所在路径下的sqljdbc4.jar,点击打开
6.连接Sql Server 2008数据库的Java代码:
连接数据库代码:
String url = "jdbc:sqlserver://localhost:1433;DatabaseName=test1;";
conn = DriverManager.getConnection(url ,"sa","12345");
完整代码:
在用Java连接数据库之前,先创建一个数据库或者导入一个数据库,然后Java连接并访问该数据库!
1 package JDBC_Test;
2
3 import java.sql.SQLException;
4 import java.sql.Statement;
5 import java.sql.Connection;
6 import java.sql.DriverManager;
7 import java.sql.ResultSet;
8
9 public class Test {
10 public static void main(String[] args) {
11 Connection conn;
12 Statement stmt;
13 ResultSet rs;
14 String url = "jdbc:sqlserver://localhost:1433;DatabaseName=student_course;";
15 String sql = "select * from student";
16 try {
17 // 连接数据库
18 conn = DriverManager.getConnection(url, "sa", "12345");
19 // 建立Statement对象
20 stmt = conn.createStatement();
21 /**
22 * Statement createStatement() 创建一个 Statement 对象来将 SQL 语句发送到数据库。
23 */
24 // 执行数据库查询语句
25 rs = stmt.executeQuery(sql);
26 /**
27 * ResultSet executeQuery(String sql) throws SQLException 执行给定的 SQL
28 * 语句,该语句返回单个 ResultSet 对象
29 */
30 while (rs.next()) {
31 int id = rs.getInt("Sno");
32 String name = rs.getString("Sname");
33 int age = rs.getInt("Sage");
34 System.out.println("Sno:" + id + "\tSame:" + name + "\tSage:" + age);
35 }
36 if (rs != null) {
37 rs.close();
38 rs = null;
39 }
40 if (stmt != null) {
41 stmt.close();
42 stmt = null;
43 }
44 if (conn != null) {
45 conn.close();
46 conn = null;
47 }
48 } catch (SQLException e) {
49 e.printStackTrace();
50 System.out.println("数据库连接失败");
51 }
52 }
53 }
通过1433端口连接不上的解决方法:
http://www.360doc.com/content/13/1119/21/14602453_330603496.shtml