摘要:
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 . 阅读全文
随笔档案-2014年04月
SQLServer 存储过程嵌套事务处理
2014-04-09 17:01 by JentleWang, 6660 阅读, 收藏, 编辑
摘要:
某个存储过程可能被单独调用,也可能由其他存储过程嵌套调用,则可能会发生嵌套事务的情形。下面是一种解决存储过程嵌套调用的通用代码,在不能确定存储过程是否可能被其他存储过程调用的情况下,建议每个存储过程都按照这个模板建立create proc proc_exampleas begin --声明变量,存放当前已开启的事务数 declare @exist_trancount int select @exist_trancount = @@trancount if @exist_trancount > 0 --创建事务保存点 save transac... 阅读全文
SQLServer通过链接服务器远程删除数据性能问题解决
2014-04-03 16:49 by JentleWang, 4558 阅读, 收藏, 编辑
摘要:
在上一遍文章中介绍了SQLServer通过链接服务器访问Oracle性能问题的解决方法,本文介绍链接服务器下远程删除SQLServer数据的性能问题解决1. 问题发现系统中有个功能,需要远程删除SQLServer实例的表数据,删除语句中有where条件,条件中有一个子查询。该功能前台执行速度非常慢。所以准备调优。下面为演示代码,未优化前如下:DELETE FROM [LINKSERVERNAME].[AdventureWorks2008].[Sales].[SalesOrderDetail]WHERE SalesOrderDetailID=5 AND EXISTS(SELECT TOP ... 阅读全文