0

我有一个带有 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 多分钟。我究竟做错了什么?我认为将其拆分为多个交易会有所帮助。

4

0 回答 0