全哥

不断学习,努力超越自己.

导航

大数据量插入

这段时间在做抓包项目,需要把抓来的数据插入到数据库中,特做了四种插入数据算法比较。

数据库:SQL Server Management Studio Express

数据库名:test

Test中的表:TBL1(id bigint,name nvarchar(50),sex nvarchar(10),remark nvarchar(50)) 这张表就是要插入的数据

开发语言:vb.net 2008

插入算法1:考虑到插入的数据非常多,我有可能会保存在多个表中。该算法使用存储过程中执行动态sql。使用该算法插入10万条数据,共花了68.684秒。

[dbo].[tbl1_insert_1]存储过程
Code

插入算法2:用存储过程,只保存一张表,性能会是怎样呢?同样插入10万条数据,共花了 48.896秒,比算法120秒。

[dbo].[tbl1_insert]存储过程

 

Code

插入算法3:不使用存储过程,直接使用command插入会怎样呢?同样插入10万条数据,共花了61.486秒,比算法1快,比算法2慢。看来在存储过程中尽量不要做比较复杂的业务。

Code

插入算法4:.net用了好久,却一直没有注意System.Data.SqlClient下还有一个SqlBulkCopy类,使用这个类批量插入数据,共花了23.954秒,是这四个算法最好的一个,比算法2快1倍。

Code

 

 

posted on 2009-05-07 12:34  全哥  阅读(5375)  评论(18编辑  收藏  举报