JDBCのセーブポイントとは何ですか?説明?
セーブポイントインターフェイスは、追加のトランザクション制御を提供します。最新のDBMSは、OracleのPL/SQLなどの環境内でセーブポイントをサポートしています。
セーブポイントを設定するときは、トランザクション内で論理ロールバックポイントを定義します。保存ポイントを超えてエラーが発生した場合は、ロールバック方式を使用して、すべての変更を元に戻すか、保存ポイントの後に行われた変更のみを元に戻すことができます。
Connectionオブジェクトには、セーブポイントの管理に役立つ2つの新しいメソッドがあります-
-
setSavepoint(String savepointName): 新しいセーブポイントを定義します。また、セーブポイントオブジェクトを返します。
-
releaseSavepoint(Savepoint savepointName): セーブポイントを削除します。パラメータとしてSavepointオブジェクトが必要であることに注意してください。このオブジェクトは通常、setSavepoint()メソッドによって生成されたセーブポイントです。
ロールバック(String savepointName)が1つあります 指定された保存ポイントに作業をロールバックするメソッド。
例
try { //Assume a valid connection object conn conn.setAutoCommit(false); Statement stmt = conn.createStatement(); //set a Savepoint Savepoint savepoint1 = conn.setSavepoint("Savepoint1"); String SQL = "INSERT INTO Employees " + "VALUES (106, 20, 'Rita', 'Tez')"; stmt.executeUpdate(SQL); //Submit a malformed SQL statement that breaks String SQL = "INSERTED IN Employees " + "VALUES (107, 22, 'Sita', 'Tez')"; stmt.executeUpdate(SQL); // If there is no error, commit the changes. conn.commit(); } catch(SQLException se){ // If there is any error. conn.rollback(savepoint1); }
-
C#のインデクサーとは何ですか?
インデクサーを使用すると、配列などのオブジェクトにインデックスを付けることができます。 構文を見てみましょう- element-type this[int index] { // The get accessor. get { // return the value specified by index } // The set accessor. set { // set the
-
C#の名前空間とは何ですか?
名前空間は、ある名前のセットを別の名前のセットから分離する方法を提供するためのものです。名前空間の定義は、次のように、キーワードnamespaceで始まり、その後に名前空間名が続きます- namespace namespace_name { // code declarations } 名前空間を定義する- namespace namespace_name { // code declarations } 以下は、C#で名前空間を使用する方法を示す例です- 例 using System; namespace first_space {