プライマリ・コンテンツに移動
Pro*C/C++プログラマーズ・ガイド
12c リリース1(12.1)
B71397-03
目次へ移動
目次
索引へ移動
索引

前
次

DESCRIBE(実行可能埋込みSQL拡張機能)

用途

Oracle記述子に動的SQL文またはPL/SQLブロックについての情報を入力します。

前提条件

埋込みSQLのPREPARE文を使用して、SQL文またはPL/SQLブロックを事前に準備しておく必要があります。

構文

キーワードおよびパラメータ

キーワードおよびパラメータ 説明

BIND VARIABLES FOR

SQL文またはPL/SQLブロックの入力変数に関する情報を保持する記述子を初期化します。

SELECT LIST FOR

SELECT文の選択リストに関する情報を保持する記述子を初期化します。

デフォルトはSELECT LIST FORです。

statement_name

PREPARE文を使用して事前に準備したSQL文またはPL/SQLブロックを指定します。

descriptor

入力する記述子の名前。

使用上の注意

埋込みSQLプログラム内のバインド記述子または選択記述子を操作するには、その前にDESCRIBE文を発行する必要があります。

入力変数と出力変数の両方を同じ記述子に記述することはできません。

DESCRIBE文で検出される変数の数は、一意に名前が指定されたプレースホルダの合計数ではなく、準備するSQL文またはPL/SQLブロックのプレースホルダの合計数です。この文の詳細は、Oracle動的SQLを参照してください。

この例では、Pro*C/C++の埋込みSQLプログラムにおけるDESCRIBE文の使用方法を示します。

EXEC SQL PREPARE my_statement FROM :my_string; 
EXEC SQL DECLARE emp_cursor 
    FOR SELECT empno, ename, sal, comm 
            FROM emp 
            WHERE deptno = :dept_number;
EXEC SQL DESCRIBE BIND VARIABLES FOR my_statement 
    INTO bind_descriptor; 
EXEC SQL OPEN emp_cursor 
    USING bind_descriptor; 
EXEC SQL DESCRIBE SELECT LIST FOR my_statement 
    INTO select_descriptor; 
EXEC SQL FETCH emp_cursor 
    INTO select_descriptor; 

関連項目