Назад | Перейти на главную страницу

Почему профилировщик SQL Server в некоторых случаях не фиксирует создание глобальной временной таблицы?

Мне нужно перепроектировать отчеты из стороннего приложения в SSRS, чтобы я мог внести некоторые изменения для наших пользователей.

Я записал SQL, который используется в отчете, однако запрос ссылается на глобальную временную таблицу, которая, кажется, создается в какой-то момент во время ввода параметра и отбрасывается при закрытии экрана параметров.

Я установил Profiler для захвата каждого события без фильтров, но по-прежнему не могу найти имя таблицы нигде, кроме запроса, который обращается к нему.

Я тестировал создание и удаление моих собственных временных таблиц, и это, как и ожидалось, отображается в Profiler.

Кто-нибудь знает, почему я не могу записать SQL, используемый для создания этой таблицы?

К вашему сведению: База данных 2005 года, но я использую инструменты 2008 года

Хотя это приложение использует много встроенного SQL, временная таблица создается в сохраненной процедуре.

Этот запрос обнаружил сохраненные процессы, которые создают таблицы.

select O.[name], left(c.[Text], 1000) as Text, left(o.name, 1000) as sp_sort
From sysComments c
  inner join sysobjects o
        on o.id = c.id
where c.[text] like '%##TABLENAME%'

И один из них вскоре был найден в списке профайлера.