【发布时间】:2011-07-05 18:20:56
【问题描述】:
我一直在尝试运行如下查询:
Insert into Members
SELECT People.id, Names.value., Ages.value FROM People
LEFT JOIN Names on Names.id = People.id
LEFT JOIN Ages on Ages.id = People.id
在 SQLite 管理器中执行时运行良好(几秒钟)。但是当我在我的程序中运行它时(停止等待它......),执行时间是不可接受的。我已经尝试过我自己的 ExecuteNonQuery 包装器(用于类)以及 command.ExecuteNonQuery()
所有其他查询(包括连接/插入)都可以正常工作,只是这一部分。我已经尝试将连接作为视图,tempTables 各种查询变体,在 SQLite 管理器中工作,但不是我的解决方案:(
我的数据目前只有几千行,但完成后会超过一百万。这是作为数据导入一部分的一次性查询。我正在使用 System.Data.SQLite。
以这种方式进行多个连接/大型插入是否存在任何已知问题? (我的其他查询返回的结果要小得多)我应该调查 Linq 还是类似的(查看相关问题)。
谢谢。
【问题讨论】:
标签: c# .net sqlite join left-join