1 package com.cps.rom.utils;
2
3 /*******************************************************************************
4 *使用Java纯驱动连接到MS SQL Server 2000数据库的测试程序
5 *作者:刘宇
6 *日期:2005-11-06
7 ******************************************************************************/
8
9 /*******************************************************************************
10 *准备工作:
11 *1、要使用Java纯驱动连接SQL Server 2000数据库,必须先获得由数据库厂商提供的驱动
12 * 程序。
13 *2、将DBDriver目录中的jdbcSQLServer目录拷贝到本地磁盘上。
14 *3、在环境变量中设置classpath,指定好驱动程序的路径。驱动程序共有三个.jar文件,
15 * 三个文件的路径都必须指定。
16 *4、在编写Java程序的开发环境(如:JCreator等)中也应指定上述文件的路径。
17 ******************************************************************************/
18 //要连接数据库,则必须包含java.sql包
19
20 public class test {
21 public static void main(String args[]) {
22 System.out.println("正在连接数据库,请稍候...");
23 try {
24 // 第一步:注册JDBC驱动程序
25 /*
26 * 如果是通过纯JAVA驱动的方式连接SQL Server,就固定使用如下字符串:
27 * "com.microsoft.jdbc.sqlserver.SQLServerDriver" 不可以更改
28 */
29 // forName()方法有可能抛出ClassNotFoundException异常,必须捕获
30 // java.lang.Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
31 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
32 // 第二步:连接到数据库
33 /*
34 * 设置连接字符串,应采用如下格式:
35 * "jdbc:microsoft:sqlserver://服务器名或IP地址:端口号(默认1433);databaseName=数据库名"
36 */
37 // 这里连接到SQL Server的pubs数据库
38 // String strCon =
39 // "jdbc:microsoft:sqlserver://localhost:1433;databaseName=DB_WuLiu";
40
41 String strCon = "jdbc:sqlserver://localhost:1433;databaseName=DB_WuLiu";
42
43 String strUserName = "sa"; // 数据库的用户名称
44 String strPWD = "123"; // 数据库的密码
45 // 建立数据库连接
46 // getConnection()方法是DriverManager类的静态方法
47 // getConnection()方法有可能抛出SQLException异常,必须捕获
48 java.sql.Connection con = java.sql.DriverManager.getConnection(strCon, strUserName, strPWD);
49 System.out.println("已顺利连接到数据库。");
50
51 // 第三步:利用上面建立的连接创建语句对象句柄
52 java.sql.Statement sta = con.createStatement();
53 sta.setQueryTimeout(30); // 设置操作延时为30秒
54
55 // 接下来,利用上面创建的语句对象句柄,对数据库进行操作
56 String strQuery = "SELECT * FROM db_Customer"; // 查询语句
57 java.sql.ResultSet rs = sta.executeQuery(strQuery); // 执行查询语句,返回记录集
58 int count = 0; // 计数器
59 System.out.println("查询到的数据:");
60 while (rs.next()) {
61 String strFirstName = rs.getString("Name"); // 获得指定字段的数据
62 String strLastName = rs.getString("Email");
63 count++; // 计数器计数
64 System.out.println(strFirstName + "." + strLastName); // 打印查询出来的数据
65 }
66 System.out.println("共查询到" + count + "行数据。"); // 统计查询出多少条数据
67
68 // 对数据库操作完毕后,关闭所有被打开的资源
69 rs.close(); // 关闭记录集
70 sta.close(); // 关闭语句对象句柄
71 con.close(); // 关闭连接
72 System.out.println("数据库已关闭。");
73 }
74 // 捕获异常并进行处理
75 catch (java.lang.ClassNotFoundException cnfe) {
76 System.out.println(cnfe.getMessage());
77 } catch (java.sql.SQLException se) {
78 System.out.println(se.getMessage());
79 }
80 }
81 }