1、Oracleのバルクインサート
2、java.sql.SQLExceptionの:ORA-01745:無効なホスト/バインド変数名(データが多すぎる解決策は、挿入の数を制限するために表示されます)
/ **
*指定されたサイズ、分離コレクションは、コレクションは、n個のプレス部品の所定の数に分割される
* @param <T>
*
* @paramリスト
* @param LEN
* @return
* /
パブリック静的<T>リスト<リスト<T >> splitList(リスト<T>リスト、INT LEN){
IF(一覧list.isEmpty == NULL ||()|| LEN <1。){
戻りCollections.emptyListを();
}
リスト<リスト<T> >新しい新しい結果=のArrayList <> ();
int型のサイズ= はlist.size(); int型COUNT =(LENサイズ+ - 1)/ LEN;のために(INT I = 0;私は数<; I ++は){リスト<T> ?のsubList = list.subList(私はLEN * ((I + 1)* lenは>サイズサイズ:LEN *(I + 1))); result.add(のsubList)。}戻り値の結果; }
3、SQL状態[72000]、エラーコード[1013]; ORA-03111:割り込み通信チャネルを受信します
ソリューションのタイムアウトを変更します
<挿入タイムアウト= " 100 " ID = " insertList "のParameterType = " java.util.Listに" > (deal_cp。INSERT INTO ID、 batch_number、 コード、 名前、 カード、 bank_card、 お金、 日付、 時間、 shop_name、 batch_numbernew、 訪問者を、 visitor_card、 END_DATE、 moneynew、 SERVICE_TYPE、 idnew、 START_DATE、 start_dates、 START_TIME、 end_dates、 END_TIME、 data_status、 DATA_TYPE、 bank_ID ) < foreachのコレクション= " リスト"項目= " dealCp "セパレータ= " 組合全て" > SELECT#{dealCp.id、jdbcType = VARCHAR}、 #{dealCp.batchNumber 、jdbcType = VARCHAR}、 #{dealCp.code、jdbcType = VARCHAR}、 #{dealCp.name、jdbcType = VARCHAR} #{dealCp.card、jdbcType= VARCHAR}、 #{dealCp.bankCard、jdbcType = VARCHAR}、 #{dealCp.money、jdbcType = VARCHAR}、 #{dealCp.dates、jdbcType = VARCHAR}、 #{dealCp.time、jdbcType = VARCHAR}、 #{ dealCp.shopName、jdbcType = VARCHAR}、 #{dealCp.batchNumbernew、jdbcType = VARCHAR}、 #{dealCp.visitor、jdbcType = VARCHAR}、 #{dealCp.visitorCard、jdbcType = VARCHAR}、 #{dealCp.endDate、jdbcType = 日付}、 #{dealCp.moneynew、jdbcType = VARCHAR}、 #{dealCp.serviceType、jdbcType = VARCHAR}、 #{dealCp.idnew、jdbcType = VARCHAR}、 #{dealCp.startDate、jdbcType = DATE}、 #{dealCp .startDates、jdbcType = VARCHAR}、 #{dealCp.startTime、jdbcType = VARCHAR}、 #{dealCp.endDates、jdbcType = VARCHAR}、 #{dealCp.endTime、jdbcType = VARCHAR}、 #{dealCp.dataStatus、jdbcType = CHAR }、 #{dealCp。 dataTypeとjdbcType = CHAR} #{dealCp.bankId、jdbcType = VARCHAR} デュアルFROM </ foreachの > </インサート>
4、ます。java.sql.SQLException:ORA-01013:現在の動作キャンセルするユーザ要求
のタイムアウトを変更するソリューション