Я пытаюсь написать вывод SQL Agent Job в текст или файл Excel или CSV.Вывод SQL Agent Job в форматировании текстового файла
Но он пишет все, что делает его очень огромным файлом с пробелами и строкой, как «-------» см. Ниже рис. Я попробовал обрезку, удалив специальные символы.
Вот моя работа.
Select data.BlockingSessionID,data.VictimSessionID,LTRIM(RTRIM(data.BlockingQuery)),LTRIM(RTRIM(data.VictimQuery)),data.WaitDurationSecond,data.WaitType,data.BlockingQueryCompletePercent
from(
SELECT
blocking_session_id AS BlockingSessionID,
session_id AS VictimSessionID,
(SELECT [text] FROM sys.sysprocesses
CROSS APPLY sys.dm_exec_sql_text([sql_handle])
WHERE spid = blocking_session_id) AS BlockingQuery,
[text] AS VictimQuery,
wait_time/1000 AS WaitDurationSecond,
wait_type AS WaitType,
percent_complete AS BlockingQueryCompletePercent
FROM sys.dm_exec_requests
CROSS APPLY sys.dm_exec_sql_text([sql_handle])
WHERE blocking_session_id > 0) data
и вот скриншоты или файл, где весь запрос жертвы и блокировки разделяется пробелами.
Вот несколько снимков экрана, как это выглядит при записи в файл. Это результат, когда происходит блокировка, я хотел бы записать это в текстовый файл, но он записывает тысячи белых пробелов. См. Ниже рис.
Вы получаете тот же результат, если запускаете запрос без агента sql? –
нет, в то время я получаю что-то вроде на первом экране – user2040021
извините, что это не имеет смысла. Я бы попытался уменьшить ваш запрос, пока вы не сможете что-то правильно работать, а затем снова начнете добавлять поля. –