ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

トランザクション(ADO)BeginTrans、CommitTrans、RollbackTrans

      2017/10/23

ADO でのトランザクション処理


【書式】


Sub Sample_Transaction

<<データベース接続>>      
On Error GoTo ErrHandler ……> エラートラップ開始
connection_object.BeginTrans ……> トランザクション開始
処理1      
処理2      
・      
・      
・      
connection_object.CommitTrans ……> 処理の確定
On Error GoTo 0 ……> エラートラップ終了
<<終了処理等>>      
  Exit Sub ……> 処理が正常に行われた場合は終了
ErrHandler: ……> エラーが発生した時、ここまで移動
connection_object.RollbackTrans ……> すべての処理を破棄する
<<終了処理等>>      

End Sub

 ※ connection_object …… Connection オブジェクト



BeginTrans メソッド

【書式】

object.BeginTrans


引数・戻り値

  • object  ・・・  対象となる Connection オブジェクトを指定します。
  • 戻り値  ・・・  トランザクションのネストのレベルを示す長整数型(Long)の値。

BeginTrans メソッドを呼び出すと、CommitTrans メソッド または RollbackTrans メソッドを呼び出しトランザクションを終了するまで、変更は実行されません。



CommitTrans メソッド

【書式】

object.CommitTrans


CreateObject 関数

  • object  ・・・  対象となる Connection オブジェクトを指定します。

CommitTrans メソッドを呼び出すとその接続上で開いているトランザクションに加えた変更が保存され、トランザクションが終了します。開いているトランザクションが存在しない場合、エラーが発生します。



RollbackTrans メソッド

【書式】

object.RollbackTrans


CreateObject 関数

  • object  ・・・  対象となる Connection オブジェクトを指定します。

RollbackTrans メソッドを呼び出すとその接続上で開いているトランザクションに加えた変更がすべて元に戻され、トランザクションが終了します。開いているトランザクションが存在しない場合、エラーが発生します。



トランザクション 使用例

サンプルVBAソース その1


実行結果

トランザクション01



サンプルVBAソース その2


実行結果

トランザクション02



 - データベース , , , , , , , , , , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

RecordCount プロパティ(ADO)
Recordset オブジェクト内のレコード数(ADO)RecordCount プロパティ

RecordCount プロパティ Recordset オブジェクトのレコード数 …

CopyFromRecordset メソッド
Recordset オブジェクトの内容をワークシートにコピーする(CopyFromRecordset メソッド・ADO)

CopyFromRecordset メソッド ADO の Recordset オ …

Command.Execute Insert Into 文
SQL文を実行する(ADO)Execute メソッド

Command オブジェクトの Execute メソッドで、SQL文を実行 Co …

BOF プロパティ・EOF プロパティ
BOF プロパティ・EOF プロパティ(ADO)

EOF プロパティ・BOF プロパティ BOF プロパティは、カレントレコードの …

ADOX データベース作成1
データベースを作成する(ADOX)

ADOX を使用してデータベース(Access)を作成 Catalog オブジェ …

ADOX テーブルの作成
テーブルの作成・削除/フィールドの作成・削除(ADOX)

ADOX を使用してテーブル・フィールド(列)を作成・削除 Table オブジェ …

データベース(MySQL)接続
データベース(MySQL)に接続する(ADO)

MySQL ODBCドライバ Windowsには標準で、いくつかの ODBC ド …

DB Class Excel へ接続
Excel VBA のクラスを使ってデータベースへ接続する(ADO)

データベースの処理をクラスモジュールに書く ExcelVBAで、クラス使用する方 …

データベース(SQLServer)接続
データベース(SQL Server)に接続する(ADO)

データベース(SQL Server)に接続 ODBC または OLE DB で接 …

ADOX テーブル名・クエリ名を取得
テーブル名、クエリ名の取得(ADOX)

テーブル名の取得 Table.Type プロパティ 【書式】 <取得> obje …