JAVA中通过JDBC访问MS SQL Server2000的常见问题

发表于:2007-06-22来源:作者:点击数: 标签:
JAVA中通过JDBC访问MS SQL Server2000的常见问题(by kingfish) 看到很多初学或初用者都碰到这问题,小结一下供后来人参考。 代码: Connection conn = null; try { Class.forName("com.microsoft.jdbc. sql server.SQLServerDriver"); conn = DriverManager.

   
  JAVA中通过JDBC访问MS SQLServer2000的常见问题(by kingfish)
  
  看到很多初学或初用者都碰到这问题,小结一下供后来人参考。
  
  代码:
  Connection conn = null;
  try {

  Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
  conn = DriverManager.getConnection(
  "jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=dbname", "username",
  "password");
  }
  catch (Exception e) {
  e.printStackTrace();
  }
  
  ---------------------------------
  No suitable driver或者找不到class
  
  通常是找不到那3个jar文件
  如果是JBuidler或者其它IDE工具,通过配置将3个jar加入工程即可。
  如果是命令行编译,加入classpath环境变量或者javac -classpath 3个jar
  如果是WEB服务器,通常放在web-inf下的lib下。也可以放在通用目录下,如tomcat的common\lib下。
  
  ---------------------------------
  java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
  
  可能的问题是
  1. 数据库根本没启动。
  
  2. 端口错误
  
  3. 由于没有打SQLServer SP3补丁(现在已经有SP4了),导致数据库启动了,企业管理器可能也能访问,
  但端口并没用在服务(缺省是1433端口)。
  
  
  有个常用工具,可以很方便查看端口情况。
  cmd下执行.netstat -an
  
  查看指定的TCP端口是否在Listening。

原文转自:http://www.ltesting.net