質問に記載されているバグは10.2.0.3で修正されており、エラーはそれ以前のOracleバージョンでのみ発生します。編集:同じ問題がOracle10.2.0.4でも見られました。まだ調査中です
Edit2:OCIでCHAR / VARCHAR列のカーソルを定義する場合(この目的ではラッパーを使用します)、列にバインドされる文字列のサイズは、列の最大幅より少なくとも1つ大きくする必要があります。
例えば列名:U_NAMEタイプ:VARCHAR(30)
1.char zName [30]; pCursor-> Define(zName、3O); //列の値が30文字の場合、これはクラッシュします
2.char zName [31]; pCursor-> Define(zName、3O); //列の値が30文字の場合、これはクラッシュします
3.char zName [31]; pCursor-> Define(zName、31); // 正しい。どの値でもクラッシュしません