我想从访问.mdb文件中插入数据到sqlserver, 这是执行数据插入SQL BulkCopy或使用OLEDB的OPENDATASOURCE的最快方式。SQL BulkCopy与OPENDATASOURCE哪一个更快
数据将像约20个表的100,000个记录。
谢谢。
我正在做这从c#代码,我需要哪一个执行更好,我无法比较,因为OPENDATASOURCE要求管理员权限。
我想从访问.mdb文件中插入数据到sqlserver, 这是执行数据插入SQL BulkCopy或使用OLEDB的OPENDATASOURCE的最快方式。SQL BulkCopy与OPENDATASOURCE哪一个更快
数据将像约20个表的100,000个记录。
谢谢。
我正在做这从c#代码,我需要哪一个执行更好,我无法比较,因为OPENDATASOURCE要求管理员权限。
你有没有尝试从访问文件导入数据到SQL数据库? 数据库 - >任务 - >导入,Microsoft Access作为数据源,mdb文件作为参数
如果要通过C#执行此操作,则应考虑在存储过程中使用用户定义表类型。
在我的观点中,插入大量数据的最佳插入性能可以通过使用SQL批量复制实现,因为此方法完全绕过SQL查询语言并直接将数据流传输到SQL。
此外性能改进
,您可以了解更多关于白皮书:SqlBulkCopy的http://www.sqlbi.com/wp-content/uploads/SqlBulkCopy-Performance-1.0.pdf的性能
thanks.but我想要哪一个表现更好,因为我必须将其发布到生产中。 – Lalitya
也感谢您的白皮书。它非常翔实。 – Lalitya
不用客气。并没有什么可比的SQLBulkCopy ..我见过开发人员要求在论坛上Oledb的bulkcopy类像sqlbulkcopy使用sqlbulkcopy http://forums.asp.net/t/1537002.aspx/1 ..和http:// www.codeproject.com/Questions/46816/Bulk-Copy-in-oledb ..所以我再说一遍sql批量复制:) – Microtechie
我这样做从C#代码,我需要哪一个更好,我无法比较,因为OPENDATASOURCE是要求管理员权限。 – Lalitya
考虑使用用户定义表类型 – Ehsan