3
나는 쿼리 결과와 함께 첨부 파일을 보내야하는 SQL 저장 프로 시저에서 작업하고 있습니다.sp_send_dbmail의 로컬 변수는 무엇입니까?
나는 sp_send_dbmail
을 사용하여 이메일을 보내고 있습니다.
내가 보내려는 쿼리에서 테이블 변수에 가입합니다. 저장 프로 시저를 실행할 때 변수가 존재하지 않는다는 오류 메시지가 나타납니다.
내 코드 :
DECLARE @t TABLE (
id INT IDENTITY(1,1),
some fields
)
DECLARE @query VARCHAR(MAX)
SET @query = 'SELECT
some values
FROM @t t
INNER JOIN dbo.Table d ON t.field = d.field
EXEC msdb.dbo.sp_send_dbmail @[email protected]_list,
@subject = @subject,
@query = @query,
@attach_query_result_as_file = 1,
@query_result_width = 4000,
@query_attachment_filename = 'Details.txt'
날이 저장 프로 시저 내에서 지역 변수를 참조 할 수있는 방법이 있습니까? 그렇지 않다면 왜 안 되겠습니까?
TIA!
왜 임시 테이블을 사용하면 도움이 될까요? 내 원본 코드의 맥락에서 임시 테이블이 아닌가요? – chama
@ chama : 내 대답을 수정했습니다. * 글로벌 * (두 개의 # 기호) 테이블이 필요합니다. –
감사합니다. 이것이 내가 대부분의 상황에서 할 수있는 일이지만, 나는 나의 쿼리와 관련된 간단한 일을 찾을 수 있었다. – chama