SQL ROLLBACK でトランザクションの変更を破棄する

用途

SQL ROLLBACK は、あるトランザクションのすべての変更と追加を破棄します。入力する HANDLE でトランザクションを定義します。

条件

  • コード番号 555343
  • 表がある
  • 適切な表の名前
  • 表および列の名前の頭文字は欧文文字でなければならず、「+」などの演算記号は名前に使用できません。これらの記号が名前に含まれていると、SQL コマンドにより、データの読込みおよび読出し時に問題が生じることがあります。

機能説明

黒色矢印とそれに帰属する構文は SQL ROLLBACK の内部フローを示します灰色矢印とそれに帰属する構文は SQL ROLLBACK コマンドに直接には含まれません

SQL コマンド SQL ROLLBACK の機能は、INDEXによって以下のように変化します。

  • INDEX なし:
    • トランザクションのすべての変更と追加が破棄されます
    • SELECT...FOR UPDATE で設定したロックがリセットされます
    • トランザクションが終了します (HANDLE が有効性を失う)
  • INDEX あり:
    • インデックス付きの行だけが 結果セット に残ります (他のすべての行は消去されます)
    • 指定されていない行に変更および追加があった場合、それらはすべて破棄されます
    • SELECT...FOR UPDATE でインデックス指定された行のみがロックされます (他のロックはすべてリセットされます)
    • その後、指定した (インデックス付き) 行は、結果セットの新しい行 0 になります
    • トランザクションは終了しません (HANDLE はその有効性を維持)
    • トランザクションを後で、SQL ROLLBACK または SQL COMMIT を使用して手動で終了する必要があります

入力

ユーザーマニュアルに含まれている NC プログラムは、あくまで解決のヒントです。機械で NC プログラムまたは個々の NC ブロックを使用する前には、必ずそれらを調整してください。

以下に応じて調整を行います。

  • 工具
  • 切断値
  • 送り速度
  • 安全な高さまたは安全な位置
  • 機械特有の位置 (例:M91)
  • プログラム呼出しのパス

一部の NC プログラムは機械キネマティクスに依存しています。このような NC プログラムは、最初のテストランの前にその機械キネマティクスに合わせてプログラムを調整してください。

さらに、実際のプログラムランの前にシミュレーションで NC プログラムをテストしてください。

 
Tip

プログラムをテストすることで、ソフトウェアオプションや有効な機械キネマティクス、現在の機械構成で、その NC プログラムが使用可能かどうかを確認できます。

11 SQL ROLLBACK Q1 HANDLE Q5 INDEX 5

:トランザクション Q5 の行 5 を除くすべての行を削除する

NC 機能には以下の構文要素が含まれます。

構文要素

意味

SQL ROLLBACK

SQL コマンド ROLLBACK 用の構文のオープナー

パラメータ

結果が保存される変数

HANDLE

トランザクションの識別のある変数

INDEX

維持される数または変数としての Result-set 内の行番号

オプションの構文要素

指定がない場合、トランザクションのすべての変更と追加が破棄されます

ユーザーマニュアルに含まれている NC プログラムは、あくまで解決のヒントです。機械で NC プログラムまたは個々の NC ブロックを使用する前には、必ずそれらを調整してください。

以下に応じて調整を行います。

  • 工具
  • 切断値
  • 送り速度
  • 安全な高さまたは安全な位置
  • 機械特有の位置 (例:M91)
  • プログラム呼出しのパス

一部の NC プログラムは機械キネマティクスに依存しています。このような NC プログラムは、最初のテストランの前にその機械キネマティクスに合わせてプログラムを調整してください。

さらに、実際のプログラムランの前にシミュレーションで NC プログラムをテストしてください。

 
Tip

プログラムをテストすることで、ソフトウェアオプションや有効な機械キネマティクス、現在の機械構成で、その NC プログラムが使用可能かどうかを確認できます。

11 SQL BIND Q881 "Tab_Example.Position_Nr"

12 SQL BIND Q882 "Tab_Example.Measure_X"

13 SQL BIND Q883 "Tab_Example.Measure_Y"

14 SQL BIND Q884 "Tab_Example.Measure_Z"

* - ...

21 SQL Q5 "SELECT Position_Nr,Measure_X,Measure_Y, Measure_Z FROM Tab_Example"

* - ...

31 SQL FETCH Q1 HANDLE Q5 INDEX+Q2

* - ...

41 SQL ROLLBACK Q1 HANDLE Q5