Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection(
"jdbc:sqlserver://localhost;DatabaseName=Stephen;SelectMethod=cursor", "sa", "sally");
我是这么写的,请问怎么错了!

解决方案 »

  1.   

    try {
       .......  
              }catch()
      

  2.   

    一、下载安装
    1、SqlServer 2005 Express Edition
       下载:http://msdn.microsoft.com/vstudio/express/sql/download/
       安装完数据库后设置ICP/IP协议启动,具体如下:
       (1)打开SQL Server Configuration Manager
       (2)转到SQL Server 2005 Network Configuration->Protocols for SQLEXPRESS
       (3)将TCP/IP设置为Enabled(启用)
       (4)双击TCP/IP项,转到IP Addresses页
       (5)IP All中设置TCP Port为1433
       (6)重新启动服务
    2、SqlServer2005数据库JDBC驱动
       下载:http://download.microsoft.com/download/d/2/e/d2e1ffb6-2cfa-4a62-a22d-a413cce93118/Download_SQL_JDBC_Driver.htm
       安装或者解压,取得sqljdbc.jar文件,该文件即为JDBC驱动。将sqljdbc.jar放到classpath。(web application中放在WEB-INF/lib下)二、连接数据库SqlServer2005的java代码
    1、在tempdb中创建测试数据表格
    use tempdb
    CREATE TABLE dbo.Table_1
    (
     ID bigint NOT NULL,
     NAME varchar(20) NOT NULL,
     EMAIL varchar(50) NULL
    )  ON [PRIMARY]2、测试使用数据库连接
       下面代码创建了一个连接到数据库的连接,及使用连接操作数据库。
    /*
     * 创建日期 2006-6-1
     */
    package cn.afss.common.web.test;import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;import org.apache.log4j.Logger;/**
     * @author Amei
     * Amei's FreeSky Studio
     */
    public class TestConnSql2k5Bean {
     /**
      * Log4J Logger for this class
      */
     private static final Logger logger =
      Logger.getLogger(TestConnSql2k5Bean.class);
     private Connection conn = null; public TestConnSql2k5Bean() {
      super();
     } public void getConnection() {
      try {
       Class
        .forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")
        .newInstance();
       String URL = "jdbc:sqlserver://localhost:1433;DatabaseName=tempdb";
       String USER = "sa"; // 根据你自己设置的数据库连接用户进行设置
       String PASSWORD = "sa"; // 根据你自己设置的数据库连接密码进行设置
       conn = DriverManager.getConnection(URL, USER, PASSWORD);
      } catch (java.lang.ClassNotFoundException ce) {
       logger.error("Get Connection error:", ce);
      } catch (java.sql.SQLException se) {
       logger.error("Get Connection error:", se);
      } catch (Exception e) {
       logger.error("Get Connection error:", e);
      }
     } public void testConnection() {
      if (conn == null)
       this.getConnection();
      try {
       String sql = "SELECT * FROM TABLE_1";
       Statement stmt = conn.createStatement();
       ResultSet rs = stmt.executeQuery(sql);
       while (rs.next()) {
        logger.debug(rs.getString("ID"));
        logger.debug(rs.getString("NAME"));
        logger.debug(rs.getString("EMAIL"));
       }
       rs.close();
       stmt.close();
      } catch (SQLException e) {
       logger.error(e.getMessage(), e);
      } finally {
       if (conn != null)
        try {
         conn.close();
        } catch (SQLException e) {
        }
      }
     }
     public static void main(String[] args) {
      TestConnSql2k5Bean bean = new TestConnSql2k5Bean();
      bean.testConnection();
     }
    }三、Sql Server2000和2005的连接代码区别
       写连接代码时需要注意2000和2005的不同:
    1、连接SqlServer2000
      Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
      URL = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=tempdb";
    2、连接SqlServer2005
      Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
      URL = "jdbc:sqlserver://localhost:1433;DatabaseName=tempdb";