当前位置: 代码迷 >> Java相关 >> 数据库连接问题2
  详细解决方案

数据库连接问题2

热度:218   发布时间:2007-01-05 11:53:53.0
数据库连接问题2

在利用纯java jdbc驱动程序实现数据路的连接.我已经把那三个数据包放到了jdk中的bin/ext文件夹中了.

给出程序是这样的:
import java.sql.*;

import javax.swing.*;

class ConnectServer2 {

static Connection con=null;

public static boolean conn(String url,String username,String password){

try{

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

}catch(Exception e){ e.printStackTrace();return false;}

try{

con = DriverManager.getConnection(url,username,password);

}catch(SQLException e){ e.printStackTrace();return false;}

return true;
}


public static boolean close(){

try{

con.close();

con = null;


}catch(SQLException e){ return false;}

return true;
}


public static void main(String args[]){

if(conn("jdbc:microsoft:sqlserver://localhost:3606;DatabaseName=xsgl","sa","")){

JOptionPane.showMessageDialog(null, "数据库连接成功");

close();
}

else

JOptionPane.showMessageDialog(null, "数据库连接失败");
}

}

错误提示是这样的:


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(DriverManager.java:525)
at java.sql.DriverManager.getConnection(DriverManager.java:171)
at ConnectServer2.conn(ConnectServer2.java:19)
at ConnectServer2.main(ConnectServer2.java:44)

什么是正在建立socket错误,端口不是可以在一定范围内可以任意定的吗?

搜索更多相关的解决方案: 数据库  

----------------解决方案--------------------------------------------------------
数据库要打SP3以上的包
----------------解决方案--------------------------------------------------------

为什么在桥连接的时候不需要打上sp3数据库升级包呢?


----------------解决方案--------------------------------------------------------
桥接不用,桥接用的是ODBC的驱动
----------------解决方案--------------------------------------------------------

升级到sp4了,但是还是显示以上的错误.老大,再给看看?为什么会这样?


----------------解决方案--------------------------------------------------------

升级到sp4了,但是还是显示以上的错误.老大,再给看看?为什么会这样?


----------------解决方案--------------------------------------------------------
问题解决,为什么端口换成1433就行,而3606不行呢?奇怪.哪位能说说为什么?
----------------解决方案--------------------------------------------------------
以下是引用wuzhong在2007-1-5 13:53:52的发言:
问题解决,为什么端口换成1433就行,而3606不行呢?奇怪.哪位能说说为什么?

用哪个端口完全取决于你的数据在哪个口监听.如果你数据库占用的是1433,那么连3606当然不行
----------------解决方案--------------------------------------------------------

默认端口 :1433


----------------解决方案--------------------------------------------------------
默认的是1433,但是如果不是默认状态,我这么才能知道我的数据在哪个端口监听呢?有什么办法吗?问的多了一点.
----------------解决方案--------------------------------------------------------
  相关解决方案