Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 显示查询必须在SQL Server中运行多长时间_Sql Server_Sql Server 2008_Tsql_Sql Server 2005 - Fatal编程技术网

Sql server 显示查询必须在SQL Server中运行多长时间

Sql server 显示查询必须在SQL Server中运行多长时间,sql-server,sql-server-2008,tsql,sql-server-2005,Sql Server,Sql Server 2008,Tsql,Sql Server 2005,有没有一种方法可以查看SQL Server中查询的完成程度?我知道如何在oracle中实现这一点,但我无法确定在SQL Server中是否可行 干杯没有直接的方法可以做到这一点,但如果您的查询不止一个选择,您可以插入以下“检查点”: 比如说 SELECT ... FROM ... RAISERROR ('33% .... DONE', 0, 1) WITH NOWAIT SELECT ... FROM ... RAISERROR ('66% .... DONE', 0, 1) WITH NOWA

有没有一种方法可以查看SQL Server中查询的完成程度?我知道如何在oracle中实现这一点,但我无法确定在SQL Server中是否可行


干杯

没有直接的方法可以做到这一点,但如果您的查询不止一个选择,您可以插入以下“检查点”:

比如说

SELECT ... FROM ...
RAISERROR ('33% .... DONE', 0, 1) WITH NOWAIT
SELECT ... FROM ...
RAISERROR ('66% .... DONE', 0, 1) WITH NOWAIT
...
...
您可以在消息窗口中查看进度


有时候这是非常有帮助的事情。

不太可能。如果你想要一个命令,它会说:这个查询完成了35%,你就不会有它。SQL Server无法判断完成查询的距离,因为它事先不知道查询将满足多少行

您可以做的是
运行sp_who2'active'
并查找您的任务。同样,它不会告诉你需要多长时间才能完成,但你可以看到关于它运行多长时间的实时信息


设置统计时间,或者运行查询后跟踪文件将向您显示信息

您可以单击调试->单步执行(F11)以分析正在执行的代码的哪一部分,或者您可以像在.NET framework中那样创建切换断点。如果您指的是执行所需的时间,请查看此项:和+1,但是要小心
%
,它是格式说明符的一部分。
SELECT ... FROM ...
RAISERROR ('33% .... DONE', 0, 1) WITH NOWAIT
SELECT ... FROM ...
RAISERROR ('66% .... DONE', 0, 1) WITH NOWAIT
...
...