[英]Exception when using JdbcRowSet Object to update
當我在程序下運行時,在更新RowSet
時出現Exception異常,但scrollable
工作正常。 JdbcRowSet
默認情況下是否可更新且可滾動?
java.sql.SQLException: ResultSet is not updatable
at com.sun.rowset.JdbcRowSetImpl.checkTypeConcurrency(Unknown Source)
at com.sun.rowset.JdbcRowSetImpl.updateString(Unknown Source)
at JdbcRowSet_Example.<init>(JdbcRowSet_Example.java:66)
at JdbcRowSet_Example.main(JdbcRowSet_Example.java:77)
代碼段
import com.sun.rowset.JdbcRowSetImpl;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import javax.sql.rowset.JdbcRowSet;
public class JdbcRowSet_Example {
String driver = "oracle.jdbc.driver.OracleDriver";
String url= "jdbc:oracle:thin:@192.168.1.102:1521:orcl";
String userName = "scott";
String passWord = "tiger";
public JdbcRowSet_Example() throws Exception {
Class.forName(driver);
JdbcRowSet jrs = new JdbcRowSetImpl();
jrs.setCommand("select * from Registration");
jrs.setUrl(url);
jrs.setUsername(userName);
jrs.setPassword(passWord);
jrs.execute();
ResultSetMetaData rsmd = jrs.getMetaData();
int count = rsmd.getColumnCount();
System.out.println("Number of Columns" + count);
System.out.println("Scrollable Example");
jrs.absolute(2);
for(int i=1; i<=count; i++){
System.out.print(jrs.getString(i) + "\t" + "\t"+"\t");
}
System.out.println();
System.out.println("Updatable Example");
jrs.absolute(4);
jrs.updateString(1, "Reyansh");
jrs.updateString(2,"Gogula");
jrs.updateString(3,"Rey_Gogula@hotmail.com");
jrs.updateRow();
}
/**
* @param args
*/
public static void main(String[] args) {
try {
JdbcRowSet_Example jd = new JdbcRowSet_Example();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
將查詢更改為:SELECT Registration。* FROM Registration;
我知道這看起來很蠢,但是效果很好!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.