如何创建慢视图?

How to create a slow view?

我想测试我的 MS-Access 应用程序(带有链接表)的超时行为。进行慢速数据库查询会非常方便。如果可能,即使有预定义的查询持续时间。

我试过这个:

CREATE VIEW slow_view AS
WAITFOR DELAY '00:01:05'
SELECT 1 AS one

但在 tsql 视图定义中不允许 WAITFOR

如何在 SQL 服务器中创建一个导致超时的慢速数据库视图?

一种选择是锁定 table。 在 SSMS 或其他工具中,使用开始事务执行查询,但不包括提交或回滚。

BEGIN TRAN

SELECT *
FROM MyTable with(tablockx)

然后尝试从不同的会话访问相同的table,它将等待事务完成/回滚。

在SSMS中的动作,左边是锁定查询,右边是阻塞查询。

要停止阻塞查询,您可以在锁定查询会话中执行COMMIT,方法是选择COMMIT并执行F5