String sql="select * from 表名";
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:自己建立ODBC数据源的名字","sa"," ");
PreparedStatement pstmt=con.prepareStatement(sql);
ResultSet rs=pstmt.executeQuery();
while(rs.next())
{
out.println(rs.getString(1));
out.println(rs.getString(2));
out.println(rs.getInt(3));
}
}catch(Exception e)
{out.println("df");}%>
----------------解决方案--------------------------------------------------------
要加补丁
要加sp3补丁 ----------------解决方案--------------------------------------------------------
回复 2# 的帖子
现在打了SP3补丁,我还重装了系统,问题是这样的呢?大家帮我看看!程序还是如下!package JDBC;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class MyDB {
public static void main(String[] args) {
//加载驱动程序
try {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
} catch (ClassNotFoundException ex) {
}
String str =
"jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=hyp";
try {
Connection con = DriverManager.getConnection(str,"sa", "");
Statement sta = con.createStatement();
ResultSet res = sta.executeQuery("select * from hyp1");
while(res.next()) {
System.out.print(res.getString("Sno"));
System.out.print(res.getString("Sname"));
}
res.close();
sta.close();
con.close();
} catch (SQLException ex1) {
ex1.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 JDBC.MyDB.main(MyDB.java:19)
如果真连接不好,只能用ODBC连接方法了?不过我觉得这个连接方法啊!那个是不是每次都要配置数据源?
----------------解决方案--------------------------------------------------------
回复 13# 的帖子
没人回答我,就没人和我情况一样吗? ----------------解决方案--------------------------------------------------------
驱动程序没有吧,应该是...
----------------解决方案--------------------------------------------------------
先开端口打开没有
先开端口打开没有-》再看sqlserver服务启动没有 ―》在加sp3补丁 ----------------解决方案--------------------------------------------------------
我一直都在用odbc建立连接,不过看了你的后,如果你只是上边那个错误,我试了一下,应该是你的端口号有问题.
1)打开"企业管理器",打开控制台根目录>SQL Server 组>数据库 2)在相应"数据库"上单击右键,选择"属性" 3)选择"常规"选项卡,点击"网络配置",如启用的协议中无"TCP/IP协议"将其加入 4)选择"TCP/IP协议",点击"属性",检查其端口号是否为1433 5)如端口号为1433将其修改为其它端口号,修改jdbc连接语句,将端口号同样改为新启用的端口号,如jdbc:microsoft:sqlserver://server_name:1400(假设新端口号为 1400) .
如果以上还发生错误你就自己下载SP4,一定连接成功.
----------------解决方案--------------------------------------------------------
不光是要到如,还要把他们扔在jdk jre lib ext下面,并且在classpath中配置,你这个应该是端口问题,socket通信
----------------解决方案--------------------------------------------------------
不光要导入
----------------解决方案--------------------------------------------------------
需要3个驱动包
----------------解决方案--------------------------------------------------------