一个连接SQL库问题,大家请帮忙!
下面是部分代码:
public static void main(String[] args) {
///////////////////////////////////////////////连接到Student数据库
String url = "jdbc:odbc:Student";
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection(url);
DatabaseMetaData dma = con.getMetaData();
System.out.println("连接到 " + dma.getURL());
System.out.println("Driver " + dma.getDriverName());
System.out.println("Version " + dma.getDriverVersion());
System.out.println("");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT Sname FROM Student");
while (rs.next()) {
String r = rs.getString("sage"); //问题就在这里,这行报错!
//不知道为什么
String s = rs.getString("Sname"); //这行能正确输出数据库结果
System.out.println( " "+ s);
}
con.close();
}
catch(Exception e) {
System.out.println("数据库连接真的出错误了~郁闷!");
}
}
SQL如下:
create table Student(Sno char(8) not null,
Sname char(8),
Sage char(8) );
为什么只有Sname能被接收,其余2个都不行呢?
问题点数:0、回复次数:7Top
1 楼thumb3344(祖国啊,我只是一个摆地摊的!)回复于 2006-02-02 16:26:39 得分 0
String r = rs.getString("sage");
//大小写?
用的什么数据库?
sun.jdbc.odbc.JdbcOdbcDriver这种驱动很少用了,换成jdbc的吧.Top
2 楼java_user(爪哇淘金者)回复于 2006-02-02 17:47:33 得分 0
应该是大小写的问题Top
3 楼hsnh1981(黑色男孩)回复于 2006-02-03 13:54:55 得分 0
大小写我都实验了,不行呀~
“sun.jdbc.odbc.JdbcOdbcDriver这种驱动很少用了,换成jdbc的吧.”
能具体说说吗?Top
4 楼sheep219(sheep219)回复于 2006-02-03 14:51:23 得分 0
根据你自己用得数据库,具体到网上查一下如何使用JDBC连接数据库。代码不大改,主要是去下一个合适得JAR包。换一下驱动类型。Top
5 楼sheep219(sheep219)回复于 2006-02-03 14:53:17 得分 0
知道你错哪里了:
这里:
ResultSet rs = stmt.executeQuery("SELECT Sname FROM Student");
你只是查找了Sname,
所以你下面一定取不到了:
String r = rs.getString("sage"); //问题就在这里,这行报错!
//不知道为什么
看看是不是。:)Top
6 楼hsnh1981(黑色男孩)回复于 2006-02-04 09:06:04 得分 0
问题解决了~谢谢大家的参与!忠心感谢热心人!!!Top
7 楼hsnh1981(黑色男孩)回复于 2006-02-07 11:11:32 得分 0
还得大家帮我下:
我安装了SQLSERVER2000的JDBC驱动后,更改了如下语句
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
请问别的地方我还需要怎么改才能使程序正常运行!Top




