import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class DBmanager {
private Connection conn=null;
private Statement stat=null;
public DBmanager(){
try {
openDB();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public void openDB() throws ClassNotFoundException{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
try {
conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test","sa","");
stat=conn.createStatement();
System.out.println("******************");
} catch (SQLException e) {
System.out.println("1111111111111111");
e.printStackTrace();
}
}
public ResultSet excuteQuery(String sql){
ResultSet rs=null;
try{
rs=stat.executeQuery(sql);
}catch(SQLException e){
e.printStackTrace();
return null;
}
return rs;
}
}
错误提示:
1111111111111111
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]ソケットの確立時にエラーが発生しました。
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at DBmanager.openDB(DBmanager.java:25)
at DBmanager.<init>(DBmanager.java:15)
at test.main(test.java:9)
Exception in thread "main" java.lang.NullPointerException
at DBmanager.excuteQuery(DBmanager.java:38)
at test.main(test.java:11)
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class DBmanager {
private Connection conn=null;
private Statement stat=null;
public DBmanager(){
try {
openDB();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public void openDB() throws ClassNotFoundException{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
try {
conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test","sa","");
stat=conn.createStatement();
System.out.println("******************");
} catch (SQLException e) {
System.out.println("1111111111111111");
e.printStackTrace();
}
}
public ResultSet excuteQuery(String sql){
ResultSet rs=null;
try{
rs=stat.executeQuery(sql);
}catch(SQLException e){
e.printStackTrace();
return null;
}
return rs;
}
}
错误提示:
1111111111111111
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]ソケットの確立時にエラーが発生しました。
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at DBmanager.openDB(DBmanager.java:25)
at DBmanager.<init>(DBmanager.java:15)
at test.main(test.java:9)
Exception in thread "main" java.lang.NullPointerException
at DBmanager.excuteQuery(DBmanager.java:38)
at test.main(test.java:11)
private Statement stat=null;改成:(试试)
private Connection conn;
private Statement stat;
但我用ODBC可以连接到数据库,这是为什么啊?
还有SP4补丁是不是要和SQL装在一个目录下啊?
补丁肯定要打到sql的安装目录里的