【发布时间】:2020-06-16 04:24:52
【问题描述】:
所以我有一个庞大的项目列表(大约 700000 行),我想在第一次创建应用程序时立即将其插入 SQLite 数据库。我已经创建了一个方法来检查它是否是第一次创建应用程序(使用 sharedpreferences),并创建了一个巨大的命令列表来运行(一些例子:
sqLiteDatabase.execSQL("INSERT INTO topenings (name,cust,color) VALUES('White - Modern Defense: Ipatov,Alexander - Shtembuliak,E: Pan-Am Intercollegiate 1/2-1/2','d2d4 g7g6 c2c4 f8g7 e2e4 d7d6 b1c3 e7e5 d4d5 a7a5 f1d3 b8a6 g1e2 d8h4 e1g1 g8h6 f2f3 e8g8 d1e1 h4e7 g1h1 c8d7 c1e3 f7f5 e4f5 h6f5 e3f2 a6c5 d3c2 g7h6 e2g3 b7b6 g3f5 g6f5 f3f4 a8e8 f4e5 d6e5 d5d6 c7d6 c3d5 e7g7 d5b6 d7c6 b6d5 c6d5 c4d5 c5d7 a1d1 h6g5 e1a5 e5e4 f2d4 g5f6 d4f6 d7f6 d1e1 e8e5 a5b6 g7e7 a2a4 f6g4 h2h3 g4f6 c2d1 g8h8 a4a5 f8g8 a5a6 f5f4 b6b7 f4f3 b7e7 f3g2 h1h2 g2f1N e1f1 e5e7 f1f6 e4e3 f6e6 e7f7 d1g4 h7h5 g4h5 f7f2 h2h1 g8c8 e6h6 h8g7 h6g6 g7f8 g6g2 c8c1 h1h2 f2d2 h5e2 d2b2 ','White')");
sqLiteDatabase.execSQL("INSERT INTO topenings (name,cust,color) VALUES('Black - Modern Defense: Ipatov,Alexander - Shtembuliak,E: Pan-Am Intercollegiate 1/2-1/2','d2d4 g7g6 c2c4 f8g7 e2e4 d7d6 b1c3 e7e5 d4d5 a7a5 f1d3 b8a6 g1e2 d8h4 e1g1 g8h6 f2f3 e8g8 d1e1 h4e7 g1h1 c8d7 c1e3 f7f5 e4f5 h6f5 e3f2 a6c5 d3c2 g7h6 e2g3 b7b6 g3f5 g6f5 f3f4 a8e8 f4e5 d6e5 d5d6 c7d6 c3d5 e7g7 d5b6 d7c6 b6d5 c6d5 c4d5 c5d7 a1d1 h6g5 e1a5 e5e4 f2d4 g5f6 d4f6 d7f6 d1e1 e8e5 a5b6 g7e7 a2a4 f6g4 h2h3 g4f6 c2d1 g8h8 a4a5 f8g8 a5a6 f5f4 b6b7 f4f3 b7e7 f3g2 h1h2 g2f1N e1f1 e5e7 f1f6 e4e3 f6e6 e7f7 d1g4 h7h5 g4h5 f7f2 h2h1 g8c8 e6h6 h8g7 h6g6 g7f8 g6g2 c8c1 h1h2 f2d2 h5e2 d2b2 ','Black')");
)
(这是我正在制作的用于训练开口的小型国际象棋应用程序)
我制作了一个 python 脚本来创建这些,但是我需要将数十万行添加到 SQLite 数据库中,并且尝试通过 android 执行它们会返回代码太大错误。有什么方法可以立即创建这个数据库?
注意:我对预填充数据库的想法持开放态度,但我尚未创建此 SQlite 数据库,也没有找到创建此数据库并将其插入应用程序的好方法
【问题讨论】:
-
"尝试通过 android 执行它们返回代码太大错误"。您能否将完整的错误消息添加到您的问题中?