代码改变世界

推荐排行榜

SQLServer 查询使用键查找时锁申请及释放顺序

2014-08-14 09:14 by JentleWang, 2755 阅读, 收藏,
摘要: 最近看了高兄的一篇文章,Sql Server 高频,高并发访问中的键查找死锁解析,很有收获,里面讲到了键查找引起的死锁问题。当然看的过程中,其实自己有个疑问:对于键查找这类查询,会申请哪些锁,锁申请和释放的顺序是怎样的?准备备注:测试表仍然使用高兄文中创建的测试表testklup在开始之前,使用db... 阅读全文

SQLServer通过链接服务器远程删除数据性能问题解决

2014-04-03 16:49 by JentleWang, 4669 阅读, 收藏,
摘要: 在上一遍文章中介绍了SQLServer通过链接服务器访问Oracle性能问题的解决方法,本文介绍链接服务器下远程删除SQLServer数据的性能问题解决1. 问题发现系统中有个功能,需要远程删除SQLServer实例的表数据,删除语句中有where条件,条件中有一个子查询。该功能前台执行速度非常慢。所以准备调优。下面为演示代码,未优化前如下:DELETE FROM [LINKSERVERNAME].[AdventureWorks2008].[Sales].[SalesOrderDetail]WHERE SalesOrderDetailID=5 AND EXISTS(SELECT TOP ... 阅读全文

SQLServer表变量对IO及内存影响测试

2014-04-11 14:40 by JentleWang, 2018 阅读, 收藏,
摘要: 1. 测试创建表变量对IO的影响测试创建表变量前后,tempdb的空间大小,目前使用sp_spaceused得到大小,也可以使用视图sys.dm_db_file_space_usageuse tempdbgoSet nocount onExec sp_spaceused /*插入数据之前*/declare @tmp_orders table ( list_no int,id int)insert into @tmp_orders(list_no,id)select ROW_NUMBER() over( order by Id ) list_no,idfrom Test.dbo.Orders . 阅读全文

SQLServer访问Oracle查询性能问题解决

2014-03-25 08:45 by JentleWang, 3661 阅读, 收藏,
摘要: 1. 问题 系统有个模块,需要查询Oracle数据库中的数据。目前是通过建立链接服务器实现的。 SQLServer访问Oracle实现 可参考这篇文章http://www.cnblogs.com/gnielee/archive/2010/09/07/access-oracle-from-sqlserver.html 目前的查询语句就是一个简单的带where条件的查询语句,类似如下: SELECT * FROM LINKED_NAME..ACCOUNT_NAME.TABLE_NAME WHERE COLUMN1=SID; 存在的问题是查询速度非常慢,前台报超时。所以准备提升下查询的性能... 阅读全文

使用ServiceBroker自动激活模拟"秒杀"场景

2014-03-24 08:49 by JentleWang, 1906 阅读, 收藏,
摘要: 1.简介 SQL Server Service Broker 是SQL server里面比较独特的一个功能。它可帮助开发人员构建异步的松散耦合应用程序 ServiceBroker入门文章:http://blogs.msdn.com/b/apgcdsd/archive/2012/07/27/sql-server-service-broker-demo.aspx ServiceBroker的队列存在自动激活(ACTIVATION)功能,其中内部激活可以激活数据库存储过程接受和处理队列的消息,而且可以启动激活存储过程的多个实例(MAX_QUEUE_READERS)。当SQLServer的SCH... 阅读全文