我是JDBC新手,为了测试目的,我在 executeUpdate()中通过了选择查询,而不是 DML查询;我得到的结果让我很困惑。
我在Scott用户的oracle 11g表中测试过它。
对于 dept 和 salgrade 表,它返回整数no。 4 和 5 这是否定的。我认为这些表中的记录。 对于 \ temp 表,它应返回14,但返回10 ;为什么?
我的代码是:
import java.sql.*;
public class JdbcTest2
{
public static void main(String args[])throws Exception
{
Class.forName("oracle.jdbc.OracleDriver");
Connection con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","scott","tiger");
Statement st=con.createStatement();
System.out.println(st.executeUpdate("select * from dept"));
System.out.println(st.executeUpdate("select * from salgrade"));
System.out.println(st.executeUpdate("select * from emp"));
st.close();
con.close();
}
}
我知道executeUpdate()不适用于选择查询;但是这里发生了什么请解释我,让我解决这个困惑。谢谢