Intro Oracle Prepared Statement
Intro Oracle Prepared Statement
Intro Oracle Prepared Statement
Intro
之前在建立Statement或 PreparedStatement
所使用的是Connection無參數的createStatement()與 preparedStatement(),
這樣取得的Statement其執行SQL後得到的ResultSet
只能使用next()方法逐筆取得查詢結果。
您可以在建立Statement物件時指定resultSetType
可指定的參數有 ResultSet.TYPE_FORWARD_ONLY、ResultSet.TYPE_SCROLL_INSENSITIVE與
ResultSet.TYPE_SCROLL_SENSITIVE,在不指定的情況下,
預設是第一個,也就是只能使用next()來逐筆取得資料,
指定第二個或第三個,則可以使用ResultSet的afterLast()、previous()、absolute()、relative()等方法。
ResultSet.TYPE_SCROLL_INSENSITIVE與ResultSet.TYPE_SCROLL_SENSITIVE
的差別在於能否取得ResultSet改變值後的資料
另外您還必須指定resultSetConcurrency
有ResultSet.CONCUR_READ_ONLY與ResultSet.CONCUR_UPDATABLE兩個參數可以設定
前者表示只能讀取ResultSet的資料
後者表示可以直接使用ResultSet來操作資料庫。
createStatement()不給定參數時
預設是ResultSet.TYPE_FORWARD_ONLY、 ResultSet.CONCUR_READ_ONLY。