Database.PreparedStatement

説明

データベースSQLステートメントの実行および操作を行うクラスです。

Database.Connection.prepareStatement()メソッドからDatabase.PreparedStatementクラスが返されます。このメソッドを呼び出すと、新しいPreparedStatementオブジェクトが作成されます。このオブジェクトは複数回実行でき、ステートメントの名前または番号付きパラメータに異なる値がバインドされます。

Database.Connection con = Database.Connection("DBConnector1");
con.connect();
Database.PreparedStatement statement = con.prepareStatement("INSERT INTO customers (ID, FirstName, LastName) VALUES (:id, :firstName, :lastName)");
Table customers = Table("Customers");
for (int i = 1; i <= customers.numRows; i++) {
	statement.bindParam("id", customers[i]["ID"], Database.DataType.Int);
	statement.bindParam("firstName", customers[i]["FirstName"], Database.DataType.VarChar);
	statement.bindParam("lastName", customers[i]["LastName"], Database.DataType.VarChar);
	statement.execute();
}
con.disconnect();

プロパティ

statement このPreparedStatementと関連付けられたSQLステートメントです。

メソッド

bindParam SQLステートメントにある名前または番号付きパラメータに値をバインドします。
execute 現在バインドされているパラメータ値を使用してステートメントを実行します。

詳細

削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Database.PreparedStatement.statement

readonly string statement

説明

このPreparedStatementと関連付けられたSQLステートメントです。

削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Database.PreparedStatement.bindParam()

void bindParam( string paramName , Variant value , int dataType )
void bindParam( int paramNum , Variant value , int dataType )

パラメータ

paramName SQLステートメントで定義されたパラメータの名前です。
paramNum SQLステートメントで定義されたパラメータの番号です。
value パラメータをバインドする値です。
dataType そのパラメータがデータベースに保管される際のデータタイプ。Database.DataTypeで定義された値の1つである必要があります。

説明

SQLステートメントにある名前または番号付きパラメータに値をバインドします。

バインド用にパラメータを定義する場合、コロンとそのコロンに続く番号または名前付きエイリアスをSQLステートメントに追加します。

以下は、名前付きパラメータを使用したSQLステートメントの例です。

INSERT INTO customers ID, FirstName, LastName) VALUES (:id, :firstName, :lastName)

この例では、パラメータを名前によってバインドしています。

statement.bindParam("id", myID);

以下は、番号付きパラメータを使用したSQLステートメントの例です。

INSERT INTO customers ID, FirstName, LastName) VALUES (:1, :2, :3)

この例では、パラメータを番号によってバインドしています。

statement.bindParam(1, myID);
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Database.PreparedStatement.execute()

Database.ResultSet execute( )

戻り値

Database.ResultSet この実行に関連付けられたResultSetです。

説明

現在バインドされているパラメータ値を使用してステートメントを実行します。

現在の実装状態では、指定したPreparedStatementに対して1つのResultSetのみを任意の時間で利用できます。つまり、execute()を再び呼び出す前に結果セットを完全に処理する必要があります。以降のexecute()呼び出しでは、生成済みResultSetのいずれかにexecute()呼び出しの新しい結果を参照させます。