TOP をテンプレートにして作成
ホーム
バックアップ
一覧
検索
最終更新
ヘルプ
ログイン
開始行
[[FrontPage]]へ~
-[[リファレンスガイド]]へ~
--[[Firebird SQLリファレンス]]へ~
&br;
----
*Firebird SQLリファレンス:DECLARE STATEMENT, DESCRIBE, EX...
#contents
----
&br;
&aname(declare_statement);
*DECLARE STATEMENT [#g7aabedc]
埋め込みSQLのプログラムにおいて、PREPARE,EXECUTEを実行...
&br;
**構文 [#q29e2965]
DECLARE <statement> STATEMENT;
&br;
|引数|説明|h
|statement|SQL変数の名前です。実行時にユーザーより提供さ...
&br;
**詳細の説明 [#d55c0e4b]
DECLARE STATEMENT により、実行時にユーザーより提供されるS...
&br;
**用例 [#c8f08dd5]
埋め込みSQLの例です。Q1 が PREPARE,EXECUTEのための文字...
EXEC SQL
DECLARE Q1 STATEMENT;
&br;
**参照 [#h82d4699]
[[EXECUTE>#execute]] , [[EXECUTE IMMEDIATE>#execute_imm...
&br;
----
&br;
&br;
&aname(describe);
*DESCRIBE [#r0dc70e6]
動的SQL文(DSQL)により検索される列に関する情報、または動的...
&br;
**構文 [#d817e7c4]
DESCRIBE [OUTPUT | INPUT] statement
{INTO | USING} SQL DESCRIPTOR xsqlda;
&br;
|引数|説明|h
|OUTPUT|省略時デフォルトです。列情報が、XSQLDAにより返さ...
|INPUT|動的パラメータの情報が、XSQLDAに格納されるべきであ...
|statement|DESCRIBEよりも前に定義された文の別名です。|
|~|・別名の定義は、PREPAREを使用します。|
|{INTO|USING} SQL DESCRIPTOR xsqlda|DESCRIBEで使用するXS...
&br;
**詳細の説明 [#pdd7dcba]
&br;
DESCRIBE には、2つの用途があります。
&br;
-OUTPUTを指定した場合、PREPAREに提供する選択リストで作成...
-INPUTを指定した場合、前のPREPAREに対する動的パラメータを...
&br;
DESCRIBEは、下表に示すようなDSQLを処理するための文の1つで...
&br;
|文|使用目的|h
|PREPARE|実行するDSQL文の準備を行います。|
|DESCRIBE|文の実行に関する情報を、XSQLDAに設定します。|
|EXECUTE|事前のPREPARE文により準備されたDSQL文を、実際に...
|EXECUTE IMMEDIATE|本文1回の実行で、PREPAREによるDSQL文...
&br;
INPUT指定DESCRIBEとOUTPUT指定のDESCRIBEは、個別に発行する...
&br;
''重要'' OUTPUT指定のDESCRIBEにおいて、もしもXSQLDAのsql...
&br;
-XSQLVARに割当てられた記憶領域の割当量を増やします。
-DESCRIBE文を再実行します。
&br;
※ 同じ XSQLDA構造体を、入力と出力で使用することも出来ます。
&br;
**用例 [#g73544d7]
&br;
すべて埋め込みSQLでの例です。
&br;
-SELECT文による検索結果出力についての情報を示します。
EXEC SQL
DESCRIBE Q INTO xsqlda
&br;
-実行時に引き渡す動的パラメータに関する情報を格納します。
EXEC SQL
DESCRIBE INPUT Q2 USING SQL DESCRIPTOR xsqlda;
&br;
**参照 [#r365a053]
[[EXECUTE>#execute]] , [[EXECUTE IMMEDIATE>#execute_imm...
&br;
これ以上の情報が欲しい場合は、Embedded SQL Guideの DSQL...
&br;
----
&br;
&aname(execute);
*EXECUTE [#fe9bad58]
&br;
事前に準備された動的SQL(DSQL)文を実行します。 SQLで使用...
&br;
**構文 [#p32fe673]
EXECUTE [TRANSACTION transaction] statement
[USING SQL DESCRIPTOR xsqlda] [INTO SQL DESCRIPTOR xsql...
&br;
|引数|説明|h
|TRANSACTION transaction|指定したトランザクション下で実行...
|statement|事前にPREPAREなどで準備した実行文の別名です。|
|USING SQL DESCRIPTOR|準備された文用のパラメータと対応す...
|INTO SQL DESCRIPTOR|実行の結果として返って来た値を格納す...
|xsqlda|XSQLDA ホスト言語変数です。|
&br;
**詳細の説明 [#lb5fae5d]
EXECUTE により、事前に(PREPAREで)準備された DSQL 文を発...
&br;
EXECUTEは、下表に示すようなDSQLを処理するための文の1つ...
&br;
|文|使用目的|h
|PREPARE|実行するDSQL文の準備を行います。|
|DESCRIBE|文の実行に関する情報を、XSQLDAに設定します。|
|EXECUTE|事前のPREPARE文により準備されたDSQL文を、実際に...
|EXECUTE IMMEDIATE|本文1回の実行で、PREPAREによるDSQL文...
&br;
文を実行する前に、PREPARE文による準備が行われている必要...
&br;
TRANSACTION句は、多重トランザクション処理を行うSQLアプ...
&br;
USING DESCRIPTOR句は、アプリケーションが設定するXSQLDA...
&br;
INTO DESCRIPTOR句は、EXECUTEにより返ってくる結果をアプ...
&br;
※ もしも、EXECUTEで実行する文が USING DESCRIPTOR と INTO...
&br;
**用例 [#df151a22]
すべて埋め込みSQLでの例です。
-事前に準備されたDSQL文を実行します。
EXEC SQL
EXECUTE DOUBLE_SMALL_BUDGET;
-事前に準備された、XSQLDAに格納されたパラメータを使用する...
EXEC SQL
EXECUTE Q USING DESCRIPTOR xsqlda;
-事前に準備された、XSQLDAに格納されたパラメータを使用し、...
EXEC SQL
EXECUTE Q USING DESCRIPTOR xsqlda_1 INTO DESCRIPTOR xsq...
&br;
**参照 [#edeaef2a]
[[DESCRIBE>#describe]] , [[EXECUTE IMMEDIATE>#execute_i...
&br;
これ以上の情報が欲しい場合は、Embedded SQL Guideの DSQL...
&br;
----
&br;
&aname(execute_immediate);
*EXECUTE IMMEDIATE [#x2a592fc]
動的SQL(DSQL)文の、準備と実行を1回で行いますが、実行結...
&br;
**構文 [#a345670f]
EXECUTE IMMEDIATE [TRANSACTION transaction]
{:variable | 'string'} [USING SQL DESCRIPTOR xsqlda];
|引数|説明|h
|TRANSACTION transaction|指定したトランザクション下で実行...
|:variable|実行したいDSQL文を格納したホスト言語変数です。|
|'string'|実行したいDSQL文を含んだ文字時列リテラルです。|
|USING SQL DESCRIPTOR|準備された文用のパラメータと対応す...
|xsqlda XSQLDA|ホスト言語変数です。|
&br;
**詳細の説明 [#w7c7dd52]
EXECUTE IMMEDIATE により、ホスト言語変数に格納もしくは...
&br;
TRANSACTION句は、多重トランザクション処理を行うSQLアプ...
&br;
実行したDSQL文は、ホスト言語変数に格納もしくは文字列リ...
&br;
USING DESCRIPTOR句は、アプリケーションが設定するXSQLDA...
**用例 [#kab61cbe]
埋め込みSQLでの例です。ホスト言語変数(insert_date)で与...
EXEC SQL
EXECUTE IMMEDIATE :insert_date;
**参照 [#s61359df]
[[DESCRIBE>#describe]] , [[EXECUTE IMMEDIATE>#execute_i...
これ以上の情報が欲しい場合は、Embedded SQL Guideの DSQL...
&br;
----
&br;
&br;
&aname(prepare);
*PREPARE [#x9e4ee39]
動的SQL(DQSL)文を実行するための、準備を行います。 SQLで...
**構文 [#fe1638d9]
PREPARE [TRANSACTION transaction] statement
[INTO SQL DESCRIPTOR xsqlda] FROM {:variable | 'string'};
&br;
|引数|説明|h
|TRANSACTION transaction|指定したトランザクション下で実行...
|statement|準備を行う文の別名を宣言します。DESCRIBEやEXEC...
|INTO xsqlda|準備する文の実行結果(選択列リスト)を格納する...
|:variable|'string'|準備するDSQL文です。格納したホスト言...
&br;
**詳細の説明 [#ddb6ad8d]
PREPARE により、繰り返し実行する DSQL 文に対して、以下...
-文に対する文法チェックが行われます。
-オプションにより指定された動的パラメータのデータ型を決定...
-文の最適化を行います。
-EXECUTEによる実行を行うためのコンパイル作業を行います。
&br;
PREPARE は、下表に示すようなDSQLを処理するための文の1つ...
&br;
|文|使用目的|h
|PREPARE|実行するDSQL文の準備を行います。|
|DESCRIBE|文の実行に関する情報を、XSQLDAに設定します。|
|EXECUTE|事前のPREPARE文により準備されたDSQL文を、実際に...
|EXECUTE IMMEDIATE|本文1回の実行で、PREPAREによるDSQL文...
&br;
PREPARE により文の準備を行った場合、その文を現在のセッ...
&br;
PREPARE により、準備するDSQL文を抽象化するためのシンボ...
&br;
オプションのINTO が指定された場合、PREPARE の実行により...
※ INTO 句で XSQLDA を設定する代わりに、DESCRIBE文を使用...
&br;
FROM では、PRPARE により準備を行いたい実際の DSQL 文を...
&br;
**用例 [#j6286171]
すべて埋め込みSQLでの例です。
-ホスト言語変数によりDSQL文を与えて準備を行います。SELECT...
EXEC SQL
PREPARE Q INTO xsqlda FROM :buf;
-上の例と同じですが、PREPARE と DESCRIBE を使用しています。
EXEC SQL
PREPARE Q FROM :buf;
EXEC SQL
DESCRIBE Q INTO SQL DESCRIPTOR xsqlda;
&br;
**参照 [#necaabe1]
[[DESCRIBE>#describe]] , [[EXECUTE>#execute]] , [[EXEC...
&br;
----
&br;
&br;
&aname(whenever);
*WHENEVER [#n837c5b6]
SQLCODE によるエラーや警告をトラップします。 SQLで使用...
&br;
**構文 [#r905e450]
WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}
{GOTO label | CONTINUE};
&br;
|引数|説明|h
|NOT FOUND|SQLCODE = 100 の条件でトラップします。(クエリ...
|SQLERROR|SQLCODE < 0 の条件でトラップします。(実行失敗)|
|SQLWARNING|SQLCODE > 0 AND < 100 の条件でトラップします...
|GOTO label|指定エラーを検知したときにジャンプする位置を...
|CONTINUE|警告やエラーを無視して、可能な限り実行を継続し...
&br;
**詳細の説明 [#d0de89d9]
WHENEVER により、SQLCODE に設定されたエラーと警告をトラ...
&br;
WHENEVERにより指定した状態をトラップした場合は、下記の...
-GOTOを指定した場合は、ラベルで指定したエラーをハンドリン...
-CONTINUEを指定した場合は、エラーなどの状態は無視されます。
&br;
WHENEVER を使用することにより、アプリケーションのサイズ...
&br;
WHENEVER は、エラーを発生させる可能性があるどのような S...
また、トラップする条件ごとに WHENEVER 文を用意する必要...
&br;
※ エラールーチンによる無限ループを防ぐために、エラーハン...
&br;
**用例 [#z975e4c8]
埋め込みSQLでの例です。3つの WHENEVER 文によりエラーと...
EXEC SQL
WHENEVER SQLERROR GO TO Error; /* Trap all errors. */
EXEC SQL
WHENEVER NOT FOUND GO TO AllDone; /* Trap SQLCODE = 100 */
EXEC SQL
WHENEVER SQLWARNING CONTINUE; /* Ignore all warnings. */
&br;
これ以上の情報が欲しい場合は、Embedded SQL Guide の err...
&br;
&br;
最終行:
[[FrontPage]]へ~
-[[リファレンスガイド]]へ~
--[[Firebird SQLリファレンス]]へ~
&br;
----
*Firebird SQLリファレンス:DECLARE STATEMENT, DESCRIBE, EX...
#contents
----
&br;
&aname(declare_statement);
*DECLARE STATEMENT [#g7aabedc]
埋め込みSQLのプログラムにおいて、PREPARE,EXECUTEを実行...
&br;
**構文 [#q29e2965]
DECLARE <statement> STATEMENT;
&br;
|引数|説明|h
|statement|SQL変数の名前です。実行時にユーザーより提供さ...
&br;
**詳細の説明 [#d55c0e4b]
DECLARE STATEMENT により、実行時にユーザーより提供されるS...
&br;
**用例 [#c8f08dd5]
埋め込みSQLの例です。Q1 が PREPARE,EXECUTEのための文字...
EXEC SQL
DECLARE Q1 STATEMENT;
&br;
**参照 [#h82d4699]
[[EXECUTE>#execute]] , [[EXECUTE IMMEDIATE>#execute_imm...
&br;
----
&br;
&br;
&aname(describe);
*DESCRIBE [#r0dc70e6]
動的SQL文(DSQL)により検索される列に関する情報、または動的...
&br;
**構文 [#d817e7c4]
DESCRIBE [OUTPUT | INPUT] statement
{INTO | USING} SQL DESCRIPTOR xsqlda;
&br;
|引数|説明|h
|OUTPUT|省略時デフォルトです。列情報が、XSQLDAにより返さ...
|INPUT|動的パラメータの情報が、XSQLDAに格納されるべきであ...
|statement|DESCRIBEよりも前に定義された文の別名です。|
|~|・別名の定義は、PREPAREを使用します。|
|{INTO|USING} SQL DESCRIPTOR xsqlda|DESCRIBEで使用するXS...
&br;
**詳細の説明 [#pdd7dcba]
&br;
DESCRIBE には、2つの用途があります。
&br;
-OUTPUTを指定した場合、PREPAREに提供する選択リストで作成...
-INPUTを指定した場合、前のPREPAREに対する動的パラメータを...
&br;
DESCRIBEは、下表に示すようなDSQLを処理するための文の1つで...
&br;
|文|使用目的|h
|PREPARE|実行するDSQL文の準備を行います。|
|DESCRIBE|文の実行に関する情報を、XSQLDAに設定します。|
|EXECUTE|事前のPREPARE文により準備されたDSQL文を、実際に...
|EXECUTE IMMEDIATE|本文1回の実行で、PREPAREによるDSQL文...
&br;
INPUT指定DESCRIBEとOUTPUT指定のDESCRIBEは、個別に発行する...
&br;
''重要'' OUTPUT指定のDESCRIBEにおいて、もしもXSQLDAのsql...
&br;
-XSQLVARに割当てられた記憶領域の割当量を増やします。
-DESCRIBE文を再実行します。
&br;
※ 同じ XSQLDA構造体を、入力と出力で使用することも出来ます。
&br;
**用例 [#g73544d7]
&br;
すべて埋め込みSQLでの例です。
&br;
-SELECT文による検索結果出力についての情報を示します。
EXEC SQL
DESCRIBE Q INTO xsqlda
&br;
-実行時に引き渡す動的パラメータに関する情報を格納します。
EXEC SQL
DESCRIBE INPUT Q2 USING SQL DESCRIPTOR xsqlda;
&br;
**参照 [#r365a053]
[[EXECUTE>#execute]] , [[EXECUTE IMMEDIATE>#execute_imm...
&br;
これ以上の情報が欲しい場合は、Embedded SQL Guideの DSQL...
&br;
----
&br;
&aname(execute);
*EXECUTE [#fe9bad58]
&br;
事前に準備された動的SQL(DSQL)文を実行します。 SQLで使用...
&br;
**構文 [#p32fe673]
EXECUTE [TRANSACTION transaction] statement
[USING SQL DESCRIPTOR xsqlda] [INTO SQL DESCRIPTOR xsql...
&br;
|引数|説明|h
|TRANSACTION transaction|指定したトランザクション下で実行...
|statement|事前にPREPAREなどで準備した実行文の別名です。|
|USING SQL DESCRIPTOR|準備された文用のパラメータと対応す...
|INTO SQL DESCRIPTOR|実行の結果として返って来た値を格納す...
|xsqlda|XSQLDA ホスト言語変数です。|
&br;
**詳細の説明 [#lb5fae5d]
EXECUTE により、事前に(PREPAREで)準備された DSQL 文を発...
&br;
EXECUTEは、下表に示すようなDSQLを処理するための文の1つ...
&br;
|文|使用目的|h
|PREPARE|実行するDSQL文の準備を行います。|
|DESCRIBE|文の実行に関する情報を、XSQLDAに設定します。|
|EXECUTE|事前のPREPARE文により準備されたDSQL文を、実際に...
|EXECUTE IMMEDIATE|本文1回の実行で、PREPAREによるDSQL文...
&br;
文を実行する前に、PREPARE文による準備が行われている必要...
&br;
TRANSACTION句は、多重トランザクション処理を行うSQLアプ...
&br;
USING DESCRIPTOR句は、アプリケーションが設定するXSQLDA...
&br;
INTO DESCRIPTOR句は、EXECUTEにより返ってくる結果をアプ...
&br;
※ もしも、EXECUTEで実行する文が USING DESCRIPTOR と INTO...
&br;
**用例 [#df151a22]
すべて埋め込みSQLでの例です。
-事前に準備されたDSQL文を実行します。
EXEC SQL
EXECUTE DOUBLE_SMALL_BUDGET;
-事前に準備された、XSQLDAに格納されたパラメータを使用する...
EXEC SQL
EXECUTE Q USING DESCRIPTOR xsqlda;
-事前に準備された、XSQLDAに格納されたパラメータを使用し、...
EXEC SQL
EXECUTE Q USING DESCRIPTOR xsqlda_1 INTO DESCRIPTOR xsq...
&br;
**参照 [#edeaef2a]
[[DESCRIBE>#describe]] , [[EXECUTE IMMEDIATE>#execute_i...
&br;
これ以上の情報が欲しい場合は、Embedded SQL Guideの DSQL...
&br;
----
&br;
&aname(execute_immediate);
*EXECUTE IMMEDIATE [#x2a592fc]
動的SQL(DSQL)文の、準備と実行を1回で行いますが、実行結...
&br;
**構文 [#a345670f]
EXECUTE IMMEDIATE [TRANSACTION transaction]
{:variable | 'string'} [USING SQL DESCRIPTOR xsqlda];
|引数|説明|h
|TRANSACTION transaction|指定したトランザクション下で実行...
|:variable|実行したいDSQL文を格納したホスト言語変数です。|
|'string'|実行したいDSQL文を含んだ文字時列リテラルです。|
|USING SQL DESCRIPTOR|準備された文用のパラメータと対応す...
|xsqlda XSQLDA|ホスト言語変数です。|
&br;
**詳細の説明 [#w7c7dd52]
EXECUTE IMMEDIATE により、ホスト言語変数に格納もしくは...
&br;
TRANSACTION句は、多重トランザクション処理を行うSQLアプ...
&br;
実行したDSQL文は、ホスト言語変数に格納もしくは文字列リ...
&br;
USING DESCRIPTOR句は、アプリケーションが設定するXSQLDA...
**用例 [#kab61cbe]
埋め込みSQLでの例です。ホスト言語変数(insert_date)で与...
EXEC SQL
EXECUTE IMMEDIATE :insert_date;
**参照 [#s61359df]
[[DESCRIBE>#describe]] , [[EXECUTE IMMEDIATE>#execute_i...
これ以上の情報が欲しい場合は、Embedded SQL Guideの DSQL...
&br;
----
&br;
&br;
&aname(prepare);
*PREPARE [#x9e4ee39]
動的SQL(DQSL)文を実行するための、準備を行います。 SQLで...
**構文 [#fe1638d9]
PREPARE [TRANSACTION transaction] statement
[INTO SQL DESCRIPTOR xsqlda] FROM {:variable | 'string'};
&br;
|引数|説明|h
|TRANSACTION transaction|指定したトランザクション下で実行...
|statement|準備を行う文の別名を宣言します。DESCRIBEやEXEC...
|INTO xsqlda|準備する文の実行結果(選択列リスト)を格納する...
|:variable|'string'|準備するDSQL文です。格納したホスト言...
&br;
**詳細の説明 [#ddb6ad8d]
PREPARE により、繰り返し実行する DSQL 文に対して、以下...
-文に対する文法チェックが行われます。
-オプションにより指定された動的パラメータのデータ型を決定...
-文の最適化を行います。
-EXECUTEによる実行を行うためのコンパイル作業を行います。
&br;
PREPARE は、下表に示すようなDSQLを処理するための文の1つ...
&br;
|文|使用目的|h
|PREPARE|実行するDSQL文の準備を行います。|
|DESCRIBE|文の実行に関する情報を、XSQLDAに設定します。|
|EXECUTE|事前のPREPARE文により準備されたDSQL文を、実際に...
|EXECUTE IMMEDIATE|本文1回の実行で、PREPAREによるDSQL文...
&br;
PREPARE により文の準備を行った場合、その文を現在のセッ...
&br;
PREPARE により、準備するDSQL文を抽象化するためのシンボ...
&br;
オプションのINTO が指定された場合、PREPARE の実行により...
※ INTO 句で XSQLDA を設定する代わりに、DESCRIBE文を使用...
&br;
FROM では、PRPARE により準備を行いたい実際の DSQL 文を...
&br;
**用例 [#j6286171]
すべて埋め込みSQLでの例です。
-ホスト言語変数によりDSQL文を与えて準備を行います。SELECT...
EXEC SQL
PREPARE Q INTO xsqlda FROM :buf;
-上の例と同じですが、PREPARE と DESCRIBE を使用しています。
EXEC SQL
PREPARE Q FROM :buf;
EXEC SQL
DESCRIBE Q INTO SQL DESCRIPTOR xsqlda;
&br;
**参照 [#necaabe1]
[[DESCRIBE>#describe]] , [[EXECUTE>#execute]] , [[EXEC...
&br;
----
&br;
&br;
&aname(whenever);
*WHENEVER [#n837c5b6]
SQLCODE によるエラーや警告をトラップします。 SQLで使用...
&br;
**構文 [#r905e450]
WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}
{GOTO label | CONTINUE};
&br;
|引数|説明|h
|NOT FOUND|SQLCODE = 100 の条件でトラップします。(クエリ...
|SQLERROR|SQLCODE < 0 の条件でトラップします。(実行失敗)|
|SQLWARNING|SQLCODE > 0 AND < 100 の条件でトラップします...
|GOTO label|指定エラーを検知したときにジャンプする位置を...
|CONTINUE|警告やエラーを無視して、可能な限り実行を継続し...
&br;
**詳細の説明 [#d0de89d9]
WHENEVER により、SQLCODE に設定されたエラーと警告をトラ...
&br;
WHENEVERにより指定した状態をトラップした場合は、下記の...
-GOTOを指定した場合は、ラベルで指定したエラーをハンドリン...
-CONTINUEを指定した場合は、エラーなどの状態は無視されます。
&br;
WHENEVER を使用することにより、アプリケーションのサイズ...
&br;
WHENEVER は、エラーを発生させる可能性があるどのような S...
また、トラップする条件ごとに WHENEVER 文を用意する必要...
&br;
※ エラールーチンによる無限ループを防ぐために、エラーハン...
&br;
**用例 [#z975e4c8]
埋め込みSQLでの例です。3つの WHENEVER 文によりエラーと...
EXEC SQL
WHENEVER SQLERROR GO TO Error; /* Trap all errors. */
EXEC SQL
WHENEVER NOT FOUND GO TO AllDone; /* Trap SQLCODE = 100 */
EXEC SQL
WHENEVER SQLWARNING CONTINUE; /* Ignore all warnings. */
&br;
これ以上の情報が欲しい場合は、Embedded SQL Guide の err...
&br;
&br;
ページ名:
新規
名前変更
ホーム
一覧
検索
最終更新
バックアップ
ヘルプ
最終更新のRSS