JDBC可滾動(dòng)和可更新結(jié)果集
JDBC中ResultSet類中,我們可以使用next()方法從結(jié)果集中的一條記錄移動(dòng)到下一條記錄。同時(shí)我們還可以在定義Statement或PrepareStatement時(shí)指定結(jié)果集是否可滾動(dòng)或更新。以下是注意事項(xiàng):
1. 即使使用了CONCUR_UPDATABLE參數(shù)來創(chuàng)建Statement,得到的結(jié)果集也不一定是“可更新的”。如果你的記錄集來自合并查詢,這樣的結(jié)果集就可能是不可更新的。可以使用ResultSet類的getConcurrency()方法來確定是否為可更新結(jié)果集。
2.在JDBC中使用可更新的結(jié)果集來更新數(shù)據(jù)庫,不能使用"select * from table"方式的sql語句,必須寫成以下兩種形式之一:<1>.select table.* from table <2>.select column1,column2,column3 from table
3.如果使用的JDBC版本是3.0 (JDK1.4以后的版本),使用CallableStatement的setXXX()方法來設(shè)置IN參數(shù)時(shí),既可以使用索引,也可以使用參數(shù)名稱。如果使用JDBC2.0及以下版本,只能使用使用索引。對(duì)于對(duì)應(yīng)的getXXX()中的參數(shù)也一樣。
ps:為了使照片能夠快速、正確的存入oracle數(shù)據(jù)庫中,最好使用oracle 10g的JDBC驅(qū)動(dòng)!
1. 即使使用了CONCUR_UPDATABLE參數(shù)來創(chuàng)建Statement,得到的結(jié)果集也不一定是“可更新的”。如果你的記錄集來自合并查詢,這樣的結(jié)果集就可能是不可更新的。可以使用ResultSet類的getConcurrency()方法來確定是否為可更新結(jié)果集。
2.在JDBC中使用可更新的結(jié)果集來更新數(shù)據(jù)庫,不能使用"select * from table"方式的sql語句,必須寫成以下兩種形式之一:<1>.select table.* from table <2>.select column1,column2,column3 from table
3.如果使用的JDBC版本是3.0 (JDK1.4以后的版本),使用CallableStatement的setXXX()方法來設(shè)置IN參數(shù)時(shí),既可以使用索引,也可以使用參數(shù)名稱。如果使用JDBC2.0及以下版本,只能使用使用索引。對(duì)于對(duì)應(yīng)的getXXX()中的參數(shù)也一樣。
ps:為了使照片能夠快速、正確的存入oracle數(shù)據(jù)庫中,最好使用oracle 10g的JDBC驅(qū)動(dòng)!
posted on 2007-06-09 14:11 itkui 閱讀(885) 評(píng)論(1) 編輯 收藏