您能告诉我是否可以预览(或至少回顾一下,例如在某种日志文件中)SQL Server Management Studio Express 即将执行(或刚刚执行)的 SQL 命令吗?

过去,我使用 Embarcadero DBArtisan,它显示在服务器上实际运行 SQL 查询之前要执行的 SQL 查询,因此我渴望 Management Studio 中的此功能。

我找到了一个选项“自动生成更改脚本”,但仅显示DDL SQL查询(结构更改),而不是数据更改。

有帮助吗?

解决方案

要回答查看使用 Management Studio 时执行的基础查询的问题,有两种方法可以实现。

Management Studio 中的大多数对话框都允许您生成文件或剪贴板的更改脚本,这对于在后台达到峰值以及在开发、登台和生产服务器之间应用更改非常有用。

另一种解决方案是运行 SQL Server Profiler,并按

  • Management Studio 的应用程序名称
  • 您帐户的登录名

某些标准 T-SQL 跟踪模板就可以,或者如果您制作自定义跟踪模板,则包括 T-SQL SQL:BatchCompleted 和 SQL:BatchStarting 事件的 TextData 字段

其他提示

您可以使用Query Profiler(来自SQL)查看查询,并在嵌入事务的SQL查询中,最后进行回滚。

BEGIN TRAN

 INSERT INTO Clients 
 SELECT 'Bruno', 'Alexandre';

END

ROLLBACK TRAN

当您回滚事务时,该过程将返回到BEGIN TRAN的开头,您可以确定没有做任何事情,如果SQL遇到错误,这是提交查询和安全回滚的方法...

像:

IF @@ERROR > 0 GOTO Error

:Error
ROLLBACK TRANSACTION

您可以使用

SET SHOWPLAN_TEXT ON

在批处理的开头,让查询的计划和文本回显给您。 SHOWPLAN_TEXT 打开时,查询不会影响任何行。

然后,您可以将 SHOWPLAN_TEXT 设置为 OFF 以运行查询。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top