繁体   English   中英

C#System.Data.SQLite设计器代码

[英]C# System.Data.SQLite Designer Code

我一直在与Visual Studio 2008中的SQLite设计器打交道,并且已经注意到,当我使用生成的Insert / Update语句时,它们的运行速度非常慢。

示例:我有一个包含四列和5700行的数据表,大约需要5分钟才能将数据插入数据库表

但是,我使用参数和单个事务编写了自己的数据库连接和插入方法,并且在1秒内插入了相同的5700行。

为什么生成的代码这么慢,即使使用它也有什么好处?

谢谢。

内森

如果我正确地知道该insert语句是内置在代码背后的,那通常会花很长时间执行...它必须被编译,处理成CLR等。如果在数据库上使用存储过程,需要较少的时间,因为从代码后台调用该过程时,已经完成了这些步骤。 直接在数据库中使用过程总是比在后台隐藏代码更好,更快。

我已经阅读到SQLite的默认行为是将每个Insert语句包装在Transaction中,我认为这可以解释您所看到的行为。 当SQLite引擎创建Insert语句时,它会花费很长时间,而在编写sql时,它会很快运行。

http://www.sqlite.org/faq.html#q19

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM