用e.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(DriverManager.java:512) at java.sql.DriverManager.getConnection(DriverManager.java:171) at DBConnection.getConnection(DBConnection.java:23) at DBConnection.main(DBConnection.java:35)
;
con = DriverManager.getConnection(url)
还有就是楼上说的“桥式连接”又是怎么一回事,
能不能说明白点?
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:512)
at java.sql.DriverManager.getConnection(DriverManager.java:171)
at DBConnection.getConnection(DBConnection.java:23)
at DBConnection.main(DBConnection.java:35)
我给个例子你吧。
import java.sql.*;
public class ConnectSQLServer
{
public static void main(String[] args)
{
Connection con;
DatabaseMetaData meta;
ResultSet set,info;
try
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
}
catch(ClassNotFoundException e)
{
System.out.println("ClassNotFoundException ->"+e);
}
try
{
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mobile;user=sa;password=123456" ;
con = DriverManager.getConnection(url);
if (con!=null)
System.out.println("Connection successfull !");
else System.out.println("Connection failure !"); meta=con.getMetaData();
System.out.println("getDatabaseProductName()->"+meta.getDatabaseProductName());
System.out.println("getSchemaTerm() ->"+meta.getSchemaTerm() );
System.out.println("getURL() ->"+meta.getURL() );
System.out.println("getUserName() ->"+meta.getUserName() );
set=meta.getCatalogs();
while (set.next())
{
System.out.println("TABLE_SCHEM ->"+set.getString(1));
// System.out.println("TABLE_CATALOG ->"+set.getString(2));
}
String type[]={"TABLE"};
String column[]={"TABLE_CAT","TABLE_SCHEM","TABLE_NAME","TABLE_TYPE","REMARKS"};
//String column[]={"TABLE_CAT","TABLE_SCHEM","TABLE_NAME","TABLE_TYPE","REMARKS","TYPE_CAT", "TYPE_SCHEM","TYPE_NAME","SELF_REFERENCING_COL_NAME","REF_GENERATION"
info=meta.getTables(null,null,"%",type);
ResultSetMetaData me=info.getMetaData();
for (int i=1;i<=me.getColumnCount();i++)
System.out.println(me.getColumnName(i));
while (info.next())
{
for (int i=1;i<=5;i++)
// System.out.println(column[i-1]);
System.out.println(column[i-1]+"<----->"+info.getString(i));
System.out.println();
}
}
catch (Exception e)
{
System.out.println("Exception ->"+e);
}
}
}