[ai:SQLite] 最大レコード数制限が撤廃されたbulk insert(test:4000行成功)


Google検索で見つけたSQLite3.8.8からbulk insertのレコード数制限が無くなった投稿

since version 3.8.8,the number of rows in a VALUES clause is no longer limited by SQLITE_LIMIT_COMPOUND_SELECT.

SQLite 500行の壁が無くなったと書かれた掲示板

あぁ~ん、ようやくにか!
500レコード制限有り用のbulk insertファイル生成プログラム、開発超大変でした

アプリ側、実際のインポート機能がこれ(これでも随分シンプルになったバージョン)
開発当初、AppyBuilderにFTP & File & ZIP機能が無くhttpダウンロード+インポートをForでループさせる仕様でとっても不安定。
エラー出まくりの為、Forループを前半・中盤・後半に3分割、タイマーで開始時間をずらし実行させてました。


今回作ったレコード数制限撤廃版のbulk insert プログラムがこれ

なんてシンプル!
[AppyBuilderExtension]TableViewの勉強:プログラム


ちなみに、今回のテストデータはこんなSQL文

insert into m_item(itemcd,itemname,itemprice)
values(“1111″,”商品1だよ”,100),
(“2222″,”商品2だよ”,200),(“3333″,”商品3だよ”,300)

検証用の数千レコードのSQL文はAccessクエリで作成
[AppyBuilderExtension]TableViewの勉強:テストデータはAccessクエリで

Accessクエリのデータシートビューをテキストファイルへコピペ
先頭にinsert into m_item(itemcd,itemname,itemprice)valuesを付け
最終行のカンマを消し、UTF8で保存すればbulk insertファイル完成!
[AppyBuilderExtension]TableViewの勉強


今回、4000行のインポートに成功!

次は20000行のファイルを作ってテストしてみます。


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


2019年6月
 12
3456789
10111213141516
17181920212223
24252627282930

Topics

Comments

Archive