2010-06-22 2 views
0

У меня есть инструмент для обновления базы данных, который плохо работает. Я хотел бы поймать один из запросов, которые он отправляет в базу данных, и изменить его до его выполнения.Мониторинг и изменение SQL-запросов с помощью SQL Server 2000

Инструмент подключается через ODBC.

Инструмент и SQL Server находятся на одном сервере Windows 2003 Server.

Любые идеи?

EDIT: (Дополнительная информация) Когда инструмент запускается, он умирает на шаге 12 из 100. Он выдает плохой SQL, предназначенный для создания представления. Мне нужно подавить сообщение об ошибке или исправить SQL до его выполнения. Я не могу просто создать представление, потому что первое, что он делает, бросает представление. Даже тогда это будет ошибкой, потому что представление уже существует.

+0

Можете ли вы подробно рассказать о плохом SQL? Это просто дефект, или это связано с версиями SQL или что-то еще? Можете ли вы опубликовать данные? – SqlACID

+0

@SqlACID - Инструмент создает представление с помощью оператора select. В элементе отсутствует некоторые столбцы, поэтому ... выберите PoId ,, ArgId, App ,, Process from wfrProcess. Sql динамически генерируется, поэтому я не уверен, где проблема. Это происходит после примерно 300 различных вариантов. Я видел этот инструмент раньше, поэтому я не думаю, что это дефект в инструменте. – NitroxDM

+0

Я нашел, где инструмент выбирает, чтобы генерировать плохой SQL! Поэтому моя текущая проблема решена ... сейчас все равно. Мне все еще нужно иметь возможность сделать человека в средней идее. Может быть, как пользовательский драйвер ODBC? – NitroxDM

ответ

2

Конечно - используйте SQL Profiler для перехвата и записи запроса.

Очень полезный инструмент, который ...

+0

Я могу посмотреть, как запрос приходит с использованием Profiler (мне нравится этот инструмент), но мне нужно изменить его до его запуска. Инструмент создает SQL с синтаксическими ошибками, которые необходимо устранить. Я хочу сделать человека в средней настройке, где я могу обезьяну с каждой вещью, которую делает инструмент. Или установите сервер для замены запроса. – NitroxDM

+0

Есть ли опция в Профилире, которую я пропускаю? – NitroxDM

+0

@NitorxDM: нет, вы не можете изменить его в профилировщике. Вы можете скопировать его в SSMS и изменить его и запустить. – gbn