2016-07-22 39 views
1

我是新来的java,我试图创建一个方法,将从数据库检索信息基于查询将传递给它。Java和SQL Server

我以为我可以通过方法通过创建类型的对象:

private Connection controlTableConnection = null; 

然后

Statement statement = controlTableConnection.createStatement(); 

,但是当我这样做,一段代码,我得到一个亮点错误: 未处理的异常

任何帮助,将不胜感激。

import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.Statement; 

public class ConnectMSSQLServer { 

    private static final String db_connect_string = "jdbc:sqlserver://Cdsx\\SQxxs"; 
    private static final String db_userid = "aa"; 
    private static final String db_password = "bb"; 
    private Connection controlTableConnection = null; 


    public void dbConnect() { 
     try { 
      Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 
      Connection controlTableConnection = DriverManager.getConnection(db_connect_string, db_userid, db_password); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 

    public void dbDisconnect() { 
     try { 
      if (controlTableConnection != null && !controlTableConnection.isClosed()) { 
       controlTableConnection.close(); 
      } 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 

    public void createstatement() { 

     Statement statement = controlTableConnection.createStatement(); 
    } 


} 

回答

3

您必须像下面一样包装createStatement行,因为您必须处理SQLException。

try { 
     Statement statement = controlTableConnection.createStatement(); 
    } catch (SQLException e) { 
     e.printStackTrace(); 
    } 
0

是不是Connection null?你在classpath上有驱动吗?默认端口是否正确? sql服务器是否在线?你会得到什么样的例外? 您需要至少发布堆栈跟踪或日志