听起来很奇怪,我需要减慢 SQL 查询的速度。目前,我在带有 AdventureWorks 数据库的内部开发服务器上使用 Microsoft SQL Server 2008 R2。我正在测试一些代码,无论我尝试什么,我运行的查询都太快了!
基本上我正在测试一个截止功能,并且需要一个足够长的查询才能在它完成之前将其切断。
不幸的是,由于它是本地安装,AdventureWorks 数据库中没有一个查询或足够大的表来实际为我提供可使用的良好数据。我试过了
WAITFOR DELAY '01:00'
仅测试以确保其正常工作非常有用,但是现在我需要测试以查看是否可以在读取过程中切断数据流。WAITFOR 语句在这方面并不公平,因为我需要它主动从服务器检索数据。我的第一个直觉是使用复杂的计算来减慢它的速度,但是即使让 SQL 服务器将查询中的所有数值自己乘以 37 次,也只会使查询减慢几毫秒。我尝试的第二件事是将WAITFOR
语句嵌入到子查询中,但看起来你不能这样做。最后,我唯一没有尝试过的是WAITFOR
在它们之间执行多个存储过程,但我认为这不会满足我的需要。
我不得不说,当你离服务器这么近时,做出一个绝对糟糕的查询是多么困难,这给我留下了深刻的印象。
有什么办法可以轻松减慢查询速度?
谢谢!