[問題] DB資料大筆且快速寫入Sqlite的方法

看板AndroidDev作者 (f814030買者會視接單數量)時間10年前 (2016/04/20 16:50), 10年前編輯推噓1(106)
留言7則, 4人參與, 最新討論串1/2 (看更多)
各位先進好, 小弟有一事想請教, 現在於Android連接Oracle資料庫,並且使用select * from XXXX 取得大筆資料, 假設有三萬筆, 而我需要將所有資料寫入到Sqlite裡面,我現在只會一筆一筆的寫到Sqlite, 總覺得這樣速度太慢了,是否有可以大筆寫入Sqlite的方法呢? 懇請賜教,謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.72.118.19 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1461142203.A.D9C.html

04/20 17:16, , 1F
insert into XXXX values (…), (…), (…) …
04/20 17:16, 1F

04/20 17:17, , 2F
要sqlite 3.7.11(通常是android 4.1)以上
04/20 17:17, 2F
感謝您的提議,請問假若我三萬筆資料,values 後面可以接那麼長的參數嗎? ※ 編輯: f814030 (123.193.157.246), 04/20/2016 18:29:03

04/20 18:42, , 3F
應該有長度限制但是我不知道是多少,你可以例如一次一千筆
04/20 18:42, 3F
感謝!小弟來試試! ※ 編輯: f814030 (123.193.157.246), 04/20/2016 19:17:11

04/20 21:07, , 4F
insert into table(...,...,...) select * from xxx
04/20 21:07, 4F

04/20 21:07, , 5F
這樣子試看看吧!不知道可不可行....
04/20 21:07, 5F
感謝您的意見, 不過小弟看了 insert into ... select 這個方式, 會有個問題再於,我目標寫入table是屬於 Sqlite , 而來源table是屬於 Oracle, 如此一來應該是無法用此方式的。 再次感謝您的意見,也讓小弟有所收獲。

04/21 00:35, , 6F
查詢 bulk insert
04/21 00:35, 6F
※ 編輯: f814030 (211.72.118.19), 04/21/2016 09:13:00

04/21 10:31, , 7F
交給後端處理INSERT,處理完再下載sqlite db?
04/21 10:31, 7F
文章代碼(AID): #1N5qAxsS (AndroidDev)
文章代碼(AID): #1N5qAxsS (AndroidDev)