ご使用のデータベースでサポートされている任意の SQL ステートメントを実行する操作を作成できます。
このタスクについて
制約事項:- 1 つの操作に含めることができるのは、1 つの照会だけです。
ネーム・スペースは、SQL/XML と XQuery の両方で完全にサポートされています。
- Web サービス内の各操作には固有の名前を付ける必要があります。
SQL ステートメントでは、JDBC 3.0 によってサポートされているすべてのデータ・タイプ (ARRAY、DISTINCT、JAVA_OBJECT、OTHER、REF、STRUCT は除く) を使用できます。さらに、DB2® の XML データ・タイプ、および DB2 for z/OS® がサポートしている ROWID データ・タイプも使用できます。
WHERE 文節および値を受け入れるステートメントでは、名前付きパラメーターまたは定位置パラメーターを使用してください。
- 名前付きパラメーター
- 名前付きパラメーターを使用することには、以下のような 2 つの利点があります。
- 名前によって、デフォルトの XML スキーマはより詳細になり、クライアント・アプリケーションにパラメーターの意味を説明できます。
- 1 つのパラメーターを複数のホスト変数に割り当てることができます。これは、UNION ALL ビューで役立ちます。
名前付きパラメーターはコロンで始まり、通常、対応するホスト変数にちなんだ名前が付きます。例えば、次の例では :empno がパラメーターで empno がホスト変数です。SELECT * FROM employee where empno=:empno
結果として生じる XML スキーマでは、このパラメーターのエントリーは以下のようになります。<element name="empno" type="xsd:string"/>
名前には大/小文字の区別があり、有効な XML タグ名でなければなりません。パラメーターの名前に XML で認められていない文字や文字シーケンスが含まれると、ワークベンチはその名前に対して SQL/XML エスケープ規則を自動的に適用します。
例えば、xml というパラメーターは _xFFFF_xml に変換されます。HTTP GET 要求でこのパラメーターを入力パラメーターとして使用する場合、URL は次の例のようでなければなりません。http://localhost:8080/ContextRoot/rest/MyService?_xFFFF_xml=1234
- 定位置パラメーター
- このパラメーターはホスト変数を表す疑問符です。値は、名前ではなく位置によって割り当てられます。以下の INSERT ステートメントでは、定位置パラメーターが使用されています。
INSERT INTO employee VALUES (?, ?, ?, ?)
結果として生じる XML スキーマでは、これらのパラメーターのエントリーは以下のようになります。<element name="p1" type="xsd:int"/>
<element name="p2" type="xsd:string"/>
<element name="p3" type="xsd:string"/>
<element name="p4" type="xsd:anyType" nillable="true"/>
手順
SQL スクリプトに基づく操作を Web サービスに追加するには、以下のようにします。
- SQL スクリプトがワークスペースのプロジェクト内に既にある場合には、データ・プロジェクト・エクスプローラーで SQL スクリプトをドラッグして、対象の Web サービスにドロップします。 あるプロジェクトから別のプロジェクトにドラッグする場合、以下の条件のいずれかが真でなければなりません。
- 両方のプロジェクトが同じデータ・ソースに関連付けられている。
- 一方のプロジェクトが、もう一方のプロジェクトに関連付けられているデータベースのスナップショットに関連付けられている。
クライアント・アプリケーションによる値の受け渡しが必要な操作では、名前付きパラメーターか定位置パラメーターのどちらかを使用してください。
- 新しい SQL スクリプトを作成する場合には、「新規操作」ウィザードで直接作成します。 このウィザードでは、操作に名前を付け、その操作の基となる SQL スクリプトを作成します。このウィザードを開くには、2 つの異なる方法があります。
- データ・プロジェクト・エクスプローラーで、操作を追加する Web サービスを右クリックします。「新規操作」を選択します。
この方法でウィザードを開くと、1 つの Web サービスに操作を追加できます。
- 「ファイル」>「新規」>「その他」を選択します。
「新規」ウィザードで、「データ」を展開して「操作」を選択します。
この方法でウィザードを開くと、データ開発プロジェクト内に定義されている 1 つ以上の Web サービスにその操作を追加できます。
クライアント・アプリケーションによる値の受け渡しが必要な操作では、名前付きパラメーターか定位置パラメーターのどちらかを使用してください。