首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SQL Server 2012慢速

SQL Server 2012慢速
EN

Stack Overflow用户
提问于 2012-05-21 22:52:16
回答 2查看 5K关注 0票数 0

我最近将我的.NET开发从一台旧的Core2.93 GHz PC转移到了一台新的Corei7-38203.6 GHz机器上。未对项目代码或数据库布局进行任何更改。这两台机器使用相同的SQL Server 2012 Express with Advanced Services (而不是LocalDB)。

我注意到INSERT INTO命令的速度明显减慢:在旧机器上每行需要1-2毫秒,现在在新机器上需要8-9毫秒。我所能找到的唯一修复方法是在一个命令中使用多个行插入,这似乎会将命令的开销分散到许多行上。与在SQL Server2008 R2中一样,在SQL Server2012中,一个这样的命令中的行数限制是1000:http://msdn.microsoft.com/en-us/library/dd776382.aspx

但是,多行解决方案并不适用于所有场景;例如,表适配器更新逐行进行,需要很长时间才能完成。

有没有人遇到过这个问题?我该如何着手解决它呢?

EN

回答 2

Stack Overflow用户

发布于 2012-05-21 23:02:37

cpu肯定更好,但是磁盘io怎么样呢?插入显然依赖于该子系统。

碰巧我正在读这篇文章http://www.altdevblogaday.com/2012/05/16/sql-server-high-performance-inserts/

似乎表值参数可以显著提高性能。

这些评论指向下面的页面,其中有一些令人印象深刻的数字。

在comments http://florianreischl.blogspot.de/2012/03/performance-comparison-of-sql-server.html

我自己还没有用过这个,但是如果你有2008或更高版本,tvp似乎是将数据从客户机泵送到sql服务器的方法。

票数 0
EN

Stack Overflow用户

发布于 2012-11-22 04:13:37

老实说,一次写一条记录总是很慢。考虑一下-如果它适合您的体系结构-将行写入文本文件,然后批量插入它,您的性能将极大地提高。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10687600

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档