即使使用BEGIN / COMMIT TRANSACTION,SQLite插入数据也非常慢

时间:2018-11-02 00:21:14

标签: c# sqlite

我有一个带有72.000条INSERT语句的* .sql脚本。 我每10.000行放入BEGIN / COMMIT TRANSACTION语句。 所以有点像这样:

    BEGIN TRANSACTION;
    INSERT INTO Symbols (Market, Symbol, Description) VALUES ('AMEX','AAAU','Perth Mint Physical Gold ETF');
    ... 9.999 other INSERTs
    COMMIT TRANSACTION;

C#代码如下:

            var seedData = File.ReadAllText(sqlScriptFilePath);

            using (var db = new SqliteConnection(connectionString))
            {
                db.Open();

                var sqlCmdInsert = new SqliteCommand(seedData, db);
                sqlCmdInsert.ExecuteNonQuery();

                db.Close();
            }

完成插入需要30分钟以上。我究竟做错了什么?我认为将其拆分为多个交易会有所帮助。

0 个答案:

没有答案