每次在我的vb.net程序中加载表单时,我都会调用8个tsql存储过程。查询查看windowsuser发送查询并根据它提供结果。 除最后一条语句外,程序的结构总是相同的:
Create Procedure dbo.Name @one decimal(18,2) Output as
...
Create Table #Temp1
Insert Into
...
Create Table #Temp2
Insert Into
...
Select ...
最后一个Select语句在所有八个SP中都会发生变化,并使用Temp1和Temp2信息,并根据登录的用户发送查询。一切正常但速度很慢,因为每八个查询都是由load_event触发的。加快速度的最佳方法是什么?
答案 0 :(得分:0)
如果您总是一起使用所有八个过程,则将它们合并为一个并仅创建一次临时表。
如果您需要提高速度,也可以索引临时表。
答案 1 :(得分:0)
由于它是性能问题,对于SQL Server 2000及更高版本,您可以尝试使用表变量(前缀为@
)而不是临时表。