インジケータ変数とは、データのやりとりをするときに補足的な情報を保持する C 変数のことです。インジケータ変数の役割は、場合によってまったく異なります。
NULL 値 アプリケーションが NULL 値を扱えるようにする。
文字列のトランケーション フェッチした値がホスト変数におさまるようにトランケートされた場合に、アプリケーションが対応できるようにする。
変換エラー エラー情報を保持する。
インジケータ変数は a_sql_len 型のホスト変数で、SQL 文では通常のホスト変数の直後に書きます。たとえば、次の INSERT 文では、:ind_phone がインジケータ変数です。
EXEC SQL INSERT INTO Employees VALUES (:employee_number, :employee_name, :employee_initials, :employee_phone:ind_phone ); |
フェッチ時または実行時にデータベースサーバからローを受信しなかった場合 (エラーが発生したか、結果セットの末尾に到達した場合)、インジケータの値は変更されません。
32 ビット長および 64 ビット長とインジケータを今後使用できるように、Embedded SQL での short int の使用は推奨されなくなりました。a_sql_len を代わりに使用します。
インジケータ変数:SQL NULL 値
インジケータ変数:トランケートされた値
インジケータ変数:変換エラー
インジケータ変数値のまとめ
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |