PreparedStatement の execute メソッドを使用して SQL データ操作を実行できます。PreparedStatement は、データベースに対してユーザ定義の SQL 文を実行します。
PreparedStatement に SQL 文を適用するときは、? 文字でクエリ・パラメータを指定します。INSERT 文、UPDATE 文、DELETE 文では、文での順序位置に従ってそれぞれの ? パラメータが参照されます。たとえば、最初の ? はパラメータ 1、2 番目の ? はパラメータ 2、のようになります。
新しい SQL 文を String として準備します。
String sql_string = "INSERT INTO Department(dept_no, name) VALUES( ?, ? )"; |
String を PreparedStatement に渡します。
PreparedStatement inserter = conn.prepareStatement(sql_string); |
set メソッドを使用して、入力値を PreparedStatement に渡します。
この例では、パラメータ 1 として参照している dept_no に 101 を設定し、パラメータ 2 として参照している name に "Electronics" を設定しています。
inserter.set(1, 101); inserter.set(2, "Electronics"); |
文を実行します。
inserter.execute(); |
PreparedStatement を閉じてリソースを解放します。
inserter.close() |
データベースへのすべての変更をコミットします。
conn.commit(); |
新しい SQL 文を String として準備します。
String sql_string = "UPDATE Department SET dept_no = ? WHERE dept_no = ?"; |
String を PreparedStatement に渡します。
PreparedStatement updater = conn.prepareStatement(sql_string); |
set メソッドを使用して、入力値を PreparedStatement に渡します。
updater.set(1, 102); updater.set(2, 101); |
上の例は、次の SQL 文を宣言することと同等です。
UPDATE Department SET dept_no = 102 WHERE dept_no = 101 |
文を実行します。
updater.execute(); |
PreparedStatement を閉じてリソースを解放します。
updater.close() |
データベースへのすべての変更をコミットします。
conn.commit(); |
新しい SQL 文を String として準備します。
String sql_string = "DELETE FROM Department WHERE dept_no = ?"; |
String を PreparedStatement に渡します。
PreparedStatement deleter = conn.prepareStatement(sql_string); |
set メソッドを使用して、入力値を PreparedStatement に渡します。
deleter.set(1, 102); |
上の例は、次の SQL 文を宣言することと同等です。
DELETE FROM Department WHERE dept_no = 102 |
文を実行します。
deleter.execute(); |
PreparedStatement を閉じてリソースを解放します。
deleter.close() |
データベースへのすべての変更をコミットします。
conn.commit(); |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |