프로그래밍/MSSQL
[MSSQL] 테이블 '#테이블명'이(가) 없거나 권한이 없어서 삭제할 수 없습니다.
초보개발자꽁쥐
2019. 11. 27. 07:00
반응형
테이블 '#테이블명'이(가) 없거나 권한이 없어서 삭제할 수 없습니다. 오류 해결
1. 임시 테이블 #TEMP1을 생성하고 쿼리 실행 후 마지막에 테이블을 반납하는 프로시저 A 생성
2. 프로시저B에서 프로시저 A를 호출하는 쿼리를 작성 => 오류 발생
테이블 '#TEMP1'이(가) 없거나 권한이 없어서 삭제할 수 없습니다.
프로시저 A에서 임시 테이블 #TEMP1을 반납하는 부분에서 문제가 발생한 것으로 보인다.
-> 해당 테이블이 존재하는지 체크 후 삭제하도록 하자
첫 번째 방법
IF EXISTS (SELECT * FROM tempdb..sysobjects WHERE name = '#TEMP1')
BEGIN
DROP TABLE #TEMP1
END
두 번째 방법
IF OBJECT_ID('tempdb..#TEMP1') IS NOT NULL
BEGIN
DROP TABLE #TEMP1
END
반응형