`
Baple
  • 浏览: 12191 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
文章分类
社区版块
存档分类
最新评论

关于java连接sqlserver2000 和sqlserver2005的初识

阅读更多
sqlserver2000 的连接:

      java程序可用Microsoft的JDBC驱动连接sqlserver2000(但微软的JDBC驱动并不能很好的支持java语言,在连接sqlserver2000时,一不小心就会出一些bug),也可以用JTDS JDBC Driver连接sqlserver2000数据库(JTDS是一个开放源代码的100%纯Java的,用于JDBC 3.0驱动Microsoft SQL Server (2000和2005版本)和Sybase(10 ,11 ,12 ,15 版本)的驱动程序。JTDS完全与JDBC 3.0兼容,支持只向前的,和可滚动/可更新的结果集(ResultSets)中并行(完全独立)语句,并且可实施所有databasemetadata和resultsetmetadata方法。),还有其他的方式连接sqlserver数据库。在用这些驱动连接sqlserver数据库时,首先得确保数据库的sp3、sp4补丁打好了没,否则是连不上的。

用Microsoft的JDBC驱动连接,需要三个JDBC纯驱动包:mssqlserver.jar、msutil.jar和msbase.jar。//与sql2005的不同点:1,驱动包的不同。

连接代码:
public Connection getConnection(){
  try{
       Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");//与sql2005的不同点,2,driverName,的不同:jdbc在sqlserver前面。
       if (conn == null){
               conn = DriverManager.getConnection( "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=TestDB", "sa", "123");
        }
     }catch (Exception ex){
     }finally{
          if(conn != null){
               conn.close();
           }
     }
     return conn;
}

用JTDS JDBC连接需要一个jar包:可用jtds-1.2.jar。

连接代码:

public Connection getConnection(){
  try{
       Class.forName("net.sourceforge.jtds.jdbc.Driver");
       if (conn == null){
               conn = DriverManager.getConnection( "jdbc:jtds:sqlserver://localhost:1433/TestDB", "sa", "123");
        }
     }catch (Exception ex){
     }finally{
          if(conn != null){
               conn.close();
           }
     }
     return conn;
}

sqlserver2005是sql2000的升级版,比sql2000可靠多了,很多地方都增强了。(详情可百度/谷歌了解)

java连接sqlserver2005一般都用Microsoft的JDBC驱动来连接,这里比sql2000有了更好的支持。也可用用JTDS 的JDBC来连接,这里和sql2000一样。

用Microsoft的JDBC驱动连接,只需要添加一个JDBC驱动包即可:sqljdbc.jar。//与sql2000的不同点:1,驱动包的不同

连接代码:
public Connection getConnection(){
  try{
       Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//与sql2000的不同点:2,jdbc在sqlserver后面。
       if (conn == null){
               conn = DriverManager.getConnection( "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=TestDB", "sa", "123");
        }
     }catch (Exception ex){
     }finally{
          if(conn != null){
               conn.close();
           }
     }
     return conn;
}

用JTDS连接sql2005的方法和sql2000一样。

补充:
在Eclipse中测试

1、打开Eclipse,“文件”→“新建”→“项目”→“Java 项目”,项目名为Test
2、在Eclipse中,选择“窗口”→“首选项...”→“Java”→“已安装的 JRE”,选择已安装的 JRE,点击“编辑”→“添加外部”,选择%ProgramFiles%\sqljdbc_1.1\chs\sqljdbc.jar
3、在Test项目的“JRE 系统库”中可以看见sqljdbc.jar,如果没有可以右键单击项目Test→“构建路径”→“配置构建路径...”→“Java 构建路径”→“库”→“添加外部 JAR...”,选择%ProgramFiles%\sqljdbc_1.1\chs\sqljdbc.jar
4、编写Java代码,如下:

import java.sql.*;

public class Test {
public static void main(String[] srg) {
  String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";  //加载JDBC驱动
  String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=test";  //连接服务器和数据库test
  String userName = "sa";  //默认用户名
  String userPwd = "123456";  //密码
  Connection dbConn;
  try {
   Class.forName(driverName);
   dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
   System.out.println("Connection Successful!");  //如果连接成功 控制台输出Connection Successful!
  } catch (Exception e) {
   e.printStackTrace();
  }
}
}

注:

1、因为SQL Express这个版本的服务器默认是禁用的并且端口号没有配置,所以要进行重新设置

2、如果你以前用Java连接SQL Server 2000的话就要注意了:

在SQL Server 2000 中加载驱动和URL路径的语句是

String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String dbURL = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=sample";

而SQL Server 2005 中加载驱动和URL的语句则为

String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=sample";
如果写法错误将会找不到驱动。

秋忆:对于Microsoft SQL Server 2005 JDBC Driver 1.1,据我看官方文档就没有提及2000与2005的差别,相信都是按照2005的语句写法,我没有测试2000,如果朋友你测试到不一样请告诉我,谢谢!
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics