Createメソッド

機能

DBRArrayDataFactoryのCreateArrayDataメソッドで繰り返し列のデータ属性が定義されている場合に,実際に設定する要素分の領域(ArrayDataオブジェクト)を確保します。

形式

virtual void Create(INT32 i32ArrayCount) throw DBSQLCA

引数

i32ArrayCount

確保する要素数を,1から30,000の範囲の値で指定します。ただし,データベースのテーブル定義で設定されている最大要素数以下の値で設定してください。

戻り値

なし

機能詳細

引数i32ArrayCountで指定した要素数分のデータ領域を持つ,ArrayDataオブジェクトを生成します。要素数は次のメソッドで取得できます。

簡易版:DBRResultSetクラスのGetArraySizeメソッド。

詳細版:DBResultSetMetaDataクラスのGetArraySizeメソッド

ArrayDataオブジェクトに要素の値を設定するには,SetDataメソッドを呼び出します。

既にCreateメソッドが呼び出されている場合,要素数は再設定されるため,それまで設定されていたデータ領域の値は初期化されます。

なお,DBPreparedStatementオブジェクトの実行中に,Createメソッドは呼び出せません。

HiRDBでは,?パラメタに対して1要素だけの値を使えません。このため,1を指定すると,実行時にHiRDBのエラーになります。HiRDB使用時は,Createメソッドでは必ず2以上の値を指定してください。

発生する例外

DBSQLCA(RetCode)

DB_ERROR_CANNOT_ACCESS_WHILE_EXECUTED
DBPreparedStatementオブジェクトの実行中に,Createメソッドを呼び出しました。
DB_ERROR_NOT_ENOUGH_MEMORY
メモリ容量が不足しています。
DB_ERROR_ARGUMENT_OUT_OF_RANGE
引数i32ArrayCountで範囲外の値を指定しました。