JSTL SQLライブラリ - <sql:update>タグ

SQLINSERT文、UPDATE文またはDELETE文を実行します。さらに、SQL DDL文など何も返さないSQL文も実行できます。

構文

構文1: ボディ・コンテンツなし

<sql:update sql="sqlUpdate"
     [dataSource=”dataSource”]
   [var=varName] [scope=”{page|request|session|application}”]>

構文2: ボディに更新パラメータを指定

<sql:update sql="sqlUpdate"
     [dataSource=”dataSource”]
   [var=varName] [scope=”{page|request|session|application}”]>
<sql:param> actions
</sql:update>

構文3: ボディに更新文とオプションの更新パラメータを指定

<sql:update [dataSource=”dataSource”]
   [var=varName] [scope=”{page|request|session|application}”]>
update statement
optional <sql:param> actions
</sql:update>

ボディ・コンテンツ

JSP。JSPコンテナがボディ・コンテンツを処理した後、アクションがボディ・コンテンツを切り捨ててさらに処理します。

説明

sql
SQL更新文。
dataSource
更新対象のデータベースに関連付けられているデータソース。String値は、JNDIリソースへの相対パス、またはJDBCのDriverManagerクラスのパラメータを表します。
var
データベース更新結果を格納するエクスポート・スコープ変数の名前。スコープ変数の型はjava.lang.Integerです。
scope
varのスコープ。

制約

NULLおよびエラーの処理

説明

SQL更新文は、sql属性またはアクションのボディ・コンテンツに指定できます。

更新文には、JDBC PreparedStatementパラメータを示すパラメータ・マーカー(?)を含めることができます。パラメータ・マーカーの値は、ネストされたパラメータ・アクション( <sql:param>など)によって指定する必要があります。<sql:update>アクションはSQLExecutionTagインタフェースを実装し(10.10項を参照)、カスタム・パラメータ・タグによるパラメータ値の指定を可能にします。

データベースへの接続は、<sql:query>について説明されているのと同じ方法で取得されます。

<sql:update>アクションの結果は、var属性で指定したスコープ変数に格納されます(var属性を指定した場合)。その結果は、更新の影響を受けた行数を示しています。INSERT、DELETEまたはUPDATEの影響を受けた行がない場合、および何も返さないSQL文(SQL DDL文など)に対しては、ゼロが返されます。これは、JDBCクラスStatementのexecuteUpdate()メソッドと一致しています。

注意: JSTL 1.1では、Java Servlet 2.4およびJavaServer Pages 2.0の仕様をサポートするJSPコンテナが必要です。JSTL 1.0仕様の実装には、Java Servlet 2.3およびJavaServer Pages 1.2の仕様をサポートするJSPコンテナが必要です。

JSTLタグの状況依存ヘルプを提供するため、JSTLタグ・ライブラリのドキュメントがApache Software Foundation(http://www.apache.org/)で作成され、JDeveloperに含まれています。また、JSTLタグおよび属性の説明を含む『JavaServer Pages Standard Tag Library 1.0 and 1.1 Specifications』を次のWebサイトからダウンロードできます。

http://www.jcp.org/aboutJava/communityprocess/final/jsr052/index2.html

JSTLの詳細は、次の外部リファレンスを参照してください。

『Java Sun JSTL Resources』ページ:
http://java.sun.com/products/jsp/jstl/

 

JDeveloperのJSTLタグ・ライブラリについて
リファレンス: JavaServer Pages標準タグ・ライブラリ(JSTL)