关于执行SQL语句的问题 stmt.executeQuery(sqlstr);你这句的返回类型是ResultSet的,所以会这样 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 上面的代码有点乱,我在重新写一下:import java.sql.*;class createTable{ public static void main(String args[]){ String dbURL="jdbc:microsoft:sqlserver://top01:1433"; String user="yzj"; String passwd="password"; String sqlstr="create table test1( number_id integer not null, telephone_number varchar(20), email_address varchar(30), student_number integer not null, primary key(number_id,student_number))"; try{ Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); System.out.println("成功加载驱动程序!"); } catch (ClassNotFoundException e1){ System.out.println("加载驱动程序失败!"); System.out.println(e1.getMessage()); return; } try{ Connection con=DriverManager.getConnection(dbURL,user,passwd); Statement stmt=con.createStatement(); //创建Statement对象 System.out.println("连接数据库成功!"); try{ stmt.executeQuery(sqlstr); System.out.println("创建表test1成功!"); } catch (SQLException e3){ System.out.println("创建表test1失败!"); System.out.println("SQLException:"+e3.getMessage()); } con.close(); } catch (SQLException e2){ System.out.println("连接数据库失败!"); System.out.println("SQLException:"+e2.getMessage()); } }} 那怎么才能解决呢?把那句改成:ResultSet rs=stmt.executeQuery(sqlstr);这样能解决吗? 这个exception的时候是在con.close()时候出的,通常情况下在关闭connection的时候会先去找resultSet,先关闭他,再去关闭connection,你这里没有这个东西所以会出错,但出错是在关闭的时候出的,所以表已经建好了 这样能解决,一般在关闭connetion前会先关闭resultset,所以这里会出错,但是关闭的时候出错,不影响前面的建表,所以表已经建好了. 我试了,好象ResultSet rs=stmt.executeQuery(sqlstr);也不行。 我刚才试了一下,用executeUpdate()真的可以,是不是executeUpdate()和executeQuery()这两个方法功能是一样的呀?(除了返回直不同) 通常只做查询的话,使用executeQuery,更新、创建的话使用executeUpdate executeQuery()是用来作查询的。返回resultset。而executeUpdate是用来操作数据库的,例如更新,删除,创建等,返回int,也就是此次操作影响了多少行。 apache-common-io的文件监听问题 请教串口通信问题(Java)--用java串口程序读取不是一整条信息 使用lock的 线程同步问题 小弟跪求 当数据库内容更新的时候 jtable 内容实时更新 我创建了两个jframe ,一个是是用来显示数据的,一个是用来添加数据的,如何添加数据时候显示数据页即时显示出添加的数据呢。 JAVA的致命弱点 JToggleButton被按下时的颜色怎么改变? 事件是什么? 为什么装载不了图片??? 请问如何创建文件? 如何从如"200304"获得三个月前的月份如"200301"? java链接数据库字段读取顺序
class createTable{
public static void main(String args[]){
String dbURL="jdbc:microsoft:sqlserver://top01:1433";
String user="yzj";
String passwd="password";
String sqlstr="create table test1(
number_id integer not null,
telephone_number varchar(20),
email_address varchar(30),
student_number integer not null,
primary key(number_id,student_number))";
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
System.out.println("成功加载驱动程序!");
}
catch (ClassNotFoundException e1){
System.out.println("加载驱动程序失败!");
System.out.println(e1.getMessage());
return;
} try{
Connection con=DriverManager.getConnection(dbURL,user,passwd);
Statement stmt=con.createStatement(); //创建Statement对象
System.out.println("连接数据库成功!");
try{
stmt.executeQuery(sqlstr);
System.out.println("创建表test1成功!");
}
catch (SQLException e3){
System.out.println("创建表test1失败!");
System.out.println("SQLException:"+e3.getMessage());
}
con.close();
}
catch (SQLException e2){
System.out.println("连接数据库失败!");
System.out.println("SQLException:"+e2.getMessage());
}
}
}