【发布时间】:2012-06-30 08:39:13
【问题描述】:
背景:
我正在尝试将 DataTable 复制到 SQLite 数据库。与在 SQLServer 数据库上运行的等效数据集相比,SQLite 版本需要大约 5 倍的时间。为了简化这一点,我尝试使用我正在使用的 SQLiteDataAdapter 的 UpdateBatchSize 属性来启用批处理。
问题:
但是,任何设置该值的尝试都会导致 System.NotSupportedException。您如何正确设置该值?见代码:
public int InsertDataTable(DataTable dt, string selectCommand)
{
SQLiteDataAdapter myAdapter = new SQLiteDataAdapter(selectCommand, m_conn);
myAdapter.UpdateBatchSize = 0;
int rowsAffected = myAdapter.Update(dt.Select());
return rowsAffected;
}
【问题讨论】:
-
另外:由于这是我的第一个问题,任何对格式/提问的批评/建议将不胜感激。
-
连接 m_conn 是否在任何地方启动?
-
是的,它已经初始化了。初始化行是: using (SQLiteConnection conn = new SQLiteConnection(string.Format("Data Source={0}", file))) 我需要在该初始化行中设置触发器吗?
-
你可以尝试手动设置UpdateBatchSize > 1,而不是0,看看它是否有效
-
不幸的是,这会导致同样的错误。
标签: c# sqlite dataadapter