简单的JDBC/ODBC 桥问题...

来源:百度知道 编辑:UC知道 时间:2024/05/30 17:38:35
找不出什么问题......按照书上.ODBC源我已经设置好了啊.代码也是照书上的啊
出现 java.lang.NullPointerException错误...执行完rs=sm.executeQuery("select * from source ");语句后后面就不会执行了..rs是空的...怎么会这样啊.

import java.sql.*;
import java.awt.*;

public class jdbctest {
public static void main(String[]args){
String url="jdbc:odbc:source";
Connection con=null;
Statement sm=null;
ResultSet rs=null;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
System.out.println("a");
}
catch(Exception e){
System.out.println("无法加载JDbC-ODbc 桥");
return ;
}
try{
System.out.println("b");
con=DriverManager.getConnection(url);
sm=con.createStatement();
System.out.println("c");
rs=sm.executeQuery("select * from source ");
System.out.println("结果为:");
System.out.println("d")

报告! 同样是完美地运行出来了~~
所以代码肯定没有问题(恭喜你买了本还算不错的书...)
附上数据源参数:
Microsoft SQL Server ODBC 驱动程序版本 03.85.1117

数据源名称: source
数据源描述:
Server: (local)
数据库: source
语言: (Default)
翻译字符数据: Yes
日志长运行查询: No
日志驱动程序统计: No
使用集成安全机制: Yes
使用区域设置: No
预定义的语句选项: 在断开时删除临时存储过程
使用故障转移服务器: No
使用 ANSI 引用的标识符: Yes
使用 ANSI 的空值,填充和警告: Yes
数据加密: No

再问次!你确定你的数据源也是这么配的吗?数据源配错了的话, 连你的con都是空的, 后面的当然后是空的.
你该不会"数据源名称: "这里不是"source"吧?
那样就会报
Exception in thread "main" java.lang.NullPointerException
a
b
at xxx.xxx.jdbctest.main(jdbctest.java:38)
行数上不会超过3行. 因为连你那个"import java.awt.*;
"也照粘过去了( 为什么会用到awt?)

用windows NT验证的

系统DSN

再详细就只能出视频了...

题外话:下次调试的时候不要System.out.println("c"); 这样调试了, 请直接System.out.println(con); 或者System.out.println(ms); 话说, 你说"执行完rs=sm.executeQuery("select * from s