Способ предварительного просмотра (ретроспективы) SQL-запросов SQL Server Management Studio Express - PullRequest
0 голосов
/ 24 октября 2008

Не могли бы вы сказать мне, пожалуйста, если возможно предварительный просмотр (или хотя бы ретро-просмотр, например, в виде файла журнала) SQL-команд, которые SQL Server Management Studio Express собирается выполнить (или только что выполнил)

В прошлом я использовал Embarcadero DBArtisan, который показывает SQL-запросы, которые должны быть выполнены до их фактического запуска на сервере, поэтому мне не терпится воспользоваться этой возможностью в Management Studio.

Я нашел параметр "Автоматически генерировать сценарии изменений", но он показывает только DDL-запросы SQL. (изменение структуры), а не изменение данных.

Ответы [ 3 ]

2 голосов
/ 29 октября 2008

Чтобы ответить на вопрос просмотра базовых запросов, выполняемых при использовании Management Studio, есть два способа сделать это.

Большинство диалоговых окон в Management Studio позволяют создавать сценарий изменения в файле или буфере обмена, который может быть полезен для выделения пиковых значений, а также для применения изменений между серверами разработки, промежуточного уровня и производственными серверами.

Альтернативным решением будет запуск SQL Server Profiler и фильтрация по

  • ApplicationName для Management Studio
  • Логин для вашей учетной записи

Некоторые из стандартных шаблонов трассировки T-SQL будут в порядке, или если вы создадите собственный шаблон трассировки, включите поле TextData в T-SQL SQL: BatchCompleted и SQL: BatchStarting Events

1 голос
/ 24 октября 2008

Вы можете использовать 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
0 голосов
/ 28 октября 2008

Вы можете использовать

SET SHOWPLAN_TEXT ON

В начале вашего пакета, чтобы план и текст запроса были возвращены вам. Запрос не повлияет на строки, если SHOWPLAN_TEXT включено.

Затем вы можете установить SHOWPLAN_TEXT на OFF, чтобы выполнить запрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...