为什么连不上数据库呢?
我已经导入了驱动的jar包,可是不能正常运行。。。
代码如下:
import java.sql.*;
import java.io.*;
public class DBColumn
{
public static void main(String args[])
{
Connection con=null;
Statement sm=null;
String command=null;
ResultSet rs=null;
String result;
try
{
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
}
catch(
IllegalAccessException e){}
catch(
InstantiationException e2){}
System.out.println("驱动程序已加载");
con=DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=model","sa","");
System.out.println("OK,成功连接到数据库");
} catch(
ClassNotFoundException classnotfound) { }
catch(
SQLException sql) { sql.printStackTrace();}
try
{ sm=con.createStatement();
command="select * from sysobjects";
rs=sm.executeQuery(command);
System.out.println("查询结果为:");
while(rs.next());
{
result=rs.getString(1);
System.out.println(result);
}
}
catch(Exception ex) {ex.printStackTrace(); }
}
}
运行结果如下:
驱动程序已加载
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
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 DBColumn.main(DBColumn.java:29)
java.lang.NullPointerException at DBColumn.main(DBColumn.java:38)
为什么呢?
------解决方案--------------------sql server 打补丁了吗?
------解决方案-------------------- URL
------解决方案-------------------- jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=model"这个确定没问题吗?
------解决方案--------------------自己数据库名是model吗?
------解决方案--------------------1.去数据库查一下数据库的版本 print @@version 如果版本是sp3以上的
2.看看连接字符串有没有输入错误的可能
3.换下驱动包试试(不LZ用的是一个驱动包的还是三个驱动包的,我碰到过一个问题,就是有一次我也是做sqlserver 的JDBC连接,驱动包是网上下的一个驱动包msjdbc.tar,注意这个包不行。得用msbase.jar mssqlserver.jar msutil.jar这三个包驱动)