用缺省設(shè)置創(chuàng)建時,ResultSet
是一種只能訪問一次(one-time-through)、只能向前訪問(forward-only)和只讀的對象。您只能訪問數(shù)據(jù)一次,如果再次需要該
數(shù)據(jù),必須重新查詢數(shù)據(jù)庫。
然而,并不只有這一種方式。通過設(shè)置 Statement 對象上的參數(shù),您可以控制它產(chǎn)生的 ResultSet。例如:
...
Class.forName(driverName);
db = DriverManager.getConnection(connectURL);
Statement statement = db.createStatement(
ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE
);
String orderElName = xmlfileEl.getElementsByTagName("order").item(0)
.getFirstChild().getNodeValue();
...
這個 Statement 現(xiàn)在將產(chǎn)生可以更新并將應(yīng)用其他數(shù)據(jù)庫用戶所作更改的 ResultSet。您還可以在這個 ResultSet 中向前和向后移動。
第一個參數(shù)指定 ResultSet 的類型。其選項有:
TYPE_FORWARD_ONLY:缺省類型。只允許向前訪問一次,并且不會受到其他用戶對該數(shù)據(jù)庫所作更改的影響。
TYPE_SCROLL_INSENSITIVE:允許在列表中向前或向后移動,甚至可以進行特定定位,例如移至列表中的第四個記錄或者從當(dāng)前位置向后移動兩個記錄。不會受到其他用戶對該數(shù)據(jù)庫所作更改的影響。
TYPE_SCROLL_SENSITIVE:象 TYPE_SCROLL_INSENSITIVE 一樣,允許在記錄中定位。這種類型受到其他用戶所作更改的影響。如果用戶在執(zhí)行完查詢之后刪除一個記錄,那個記錄將從 ResultSet 中消失。類似的,對數(shù)據(jù)值的更改也將反映在 ResultSet 中。
第二個參數(shù)設(shè)置 ResultSet 的并發(fā)性,該參數(shù)確定是否可以更新 ResultSet。其選項有:
CONCUR_READ_ONLY:這是缺省值,指定不可以更新 ResultSet
CONCUR_UPDATABLE:指定可以更新 ResultSet
然而,并不只有這一種方式。通過設(shè)置 Statement 對象上的參數(shù),您可以控制它產(chǎn)生的 ResultSet。例如:
...
Class.forName(driverName);
db = DriverManager.getConnection(connectURL);
Statement statement = db.createStatement(
ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE
);
String orderElName = xmlfileEl.getElementsByTagName("order").item(0)
.getFirstChild().getNodeValue();
...
這個 Statement 現(xiàn)在將產(chǎn)生可以更新并將應(yīng)用其他數(shù)據(jù)庫用戶所作更改的 ResultSet。您還可以在這個 ResultSet 中向前和向后移動。
第一個參數(shù)指定 ResultSet 的類型。其選項有:
TYPE_FORWARD_ONLY:缺省類型。只允許向前訪問一次,并且不會受到其他用戶對該數(shù)據(jù)庫所作更改的影響。
TYPE_SCROLL_INSENSITIVE:允許在列表中向前或向后移動,甚至可以進行特定定位,例如移至列表中的第四個記錄或者從當(dāng)前位置向后移動兩個記錄。不會受到其他用戶對該數(shù)據(jù)庫所作更改的影響。
TYPE_SCROLL_SENSITIVE:象 TYPE_SCROLL_INSENSITIVE 一樣,允許在記錄中定位。這種類型受到其他用戶所作更改的影響。如果用戶在執(zhí)行完查詢之后刪除一個記錄,那個記錄將從 ResultSet 中消失。類似的,對數(shù)據(jù)值的更改也將反映在 ResultSet 中。
第二個參數(shù)設(shè)置 ResultSet 的并發(fā)性,該參數(shù)確定是否可以更新 ResultSet。其選項有:
CONCUR_READ_ONLY:這是缺省值,指定不可以更新 ResultSet
CONCUR_UPDATABLE:指定可以更新 ResultSet