基本事項

用途

表内の内容にアクセスする場合、または表を操作する (例えば列または行の名前の変更) ときのために、SQL コマンドが実装されています。

コントローラに実装されている SQL コマンドの構文は、プログラミング言語 SQL に非常によく似ていますが、まったく同じではありません。さらに、コントローラは SQL 言語に部分的に対応していません。

条件

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

機能説明

NC ソフトウェアでは、SQL サーバーを介して表にアクセスします。このサーバーは、実装している SQL コマンドで制御されます。NC プログラムに直接、SQL コマンドを定義できます。

サーバーは、トランザクションモデルをベースにしています。1 つのトランザクションは複数のステップで構成されており、これらステップは一緒に実行されることによって、表に入力されている内容を秩序正しく、定義どおりに処理します。

SQL コマンドは、操作モード「プログラム実行」および「MDI」アプリケーションで有効です。

トランザクションの例:

  • SQL BIND を使用して、読取りまたは書込みアクセスを許可する表の列に変数を割り当てる
  • SELECT 文を含む SQL EXECUTE でデータを選択する
  • SQL FETCHSQL UPDATE または SQL INSERT でデータを読込む、変更または追加する
  • SQL COMMIT または SQL ROLLBACK でインターアクションを確定または拒否する
  • SQL BIND を使用して、表の列と変数間のバインドを解除する
 
Tip

開始したトランザクションは、読取り専用アクセスも含めてすべて、終了してください。 トランザクションを正常に終了した場合に限り、変更および追加を適用し、ロックを解除し、さらには使用したリソースを解放できます。

結果セットは、表ファイルの標本空間を記述します。SELECT での照会が標本空間を決定します。

結果セットは、SQL サーバーでの照会実行時に生じ、そこでリソースを確保します。

この照会は、表に対するフィルターのように作用し、データセットの一部のみを可視化します。照会を可能にするためには、その位置で表ファイルを読み取る必要があります。

データの読取り・変更時およびトランザクションの終了時に結果セットを識別するには、SQL サーバーが Handle を与えます。Handle が NC プログラムで見える結果を表示します。値 0 は無効な Handle を表し、照会に対して結果セットを作成できなかったことを示します。指定の条件を満たす行がない場合は、有効な Handle のもとに、空の結果セットが作成されます。

SQL コマンドの概要

次の SQL コマンドを使用できます:

構文

機能

詳細情報

SQL BIND

SQL BIND は、表の列と変数間の関連付けを作成あるいは解除します

SQL SELECT

SQL SELECT は、表から 1 つの値を読み込みますが、トランザクションは開きません

SQL EXECUTE

SQL EXECUTE は、表の列と行を選択してトランザクションを開いたり、他の SQL 文 (追加機能) の使用を可能にします

SQL FETCH

SQL FETCH は、バインドされている変数に値を渡します

SQL ROLLBACK

SQL ROLLBACK はすべての変更を破棄してトランザクションを終了します

SQL COMMIT

SQL COMMIT はすべての変更を保存してトランザクションを終了します

SQL UPDATE

SQL UPDATE は、既存の行に加えた変更だけトランザクションを拡張します

SQL INSERT

SQL INSERT は表に新しい行を作成します

注意事項

 
注意事項
衝突の危険に注意!
SQL コマンドによる読取りおよび書込みアクセスは、表および NC プログラムで指定している単位とは関係なく、常にメートル法で行われます。
例えば表から長さを Q パラメータに保存する場合には、値は常にメートル法の単位になります。それに続いてこの値が、単位としてインチが指定されているプログラムで位置決めに使用される場合 (L X+Q1800)、不正な位置が算出されます。
  1. 単位がインチのプログラムでは、読み取られる値を使用前に換算します
 
注意事項
衝突の危険に注意!
NC プログラムのシミュレーション中でも、すべての SQL コマンドが実行されます。SQL コマンドは、例えば操作モード「プログラム実行」でも影響する表の値を上書きすることができます。上書きされた値は、その後の加工中に予期しない動作や誤った位置決めにつながる可能性があります。衝突の危険があります。
  1. シミュレーション時に SQL コマンドをスキップします (条件付きジャンプを使用するなど)
  2. FN18: SYSREAD ID992 NR16 を使用して、NC プログラムが別の操作モードまたはシミュレーションで有効になっているか確認します。
  • HDR ハードディスクを使って、表の使用時に最高速度に達し、計算能力を節約するには、ハイデンハインは、FN 26FN 27 および FN 28 の代わりに SQL 機能の使用をお勧めします。