DECLARE @existColumn INT, @tableName VARCHAR(100), @szID VARCHAR(100)
SET @tableName = 'TEST_TABLE'
SET @szID = '1'
SELECT @existColumn = szID
FROM @tableName
WHERE szID = @szID
위와같이 SQL 문을 작성 한 경우 아래와 같은 에러메시지가 발생합니다.
서버: 메시지 137, 수준 15, 상태 2, 줄 10
'@tableName' 변수를 선언해야 합니다.
그래서 execute 문을 이용해서 실행해보려고 아래와 같이 변경해보았으나
왜 생기는 문제 일까요??? 그리고 어떻게 하면 해결 할 수 있는지 조언 바랍니다.
감사합니다. ^^
DECLARE @existColumn VARCHAR(20), @tableName VARCHAR(100), @szID VARCHAR(20)
SET @tableName = 'RANK_GENESIS3_P1_EP1'
SET @szID = '0'
EXECUTE (
'SELECT ' + @existColumn + '= szID FROM ' + @tableName + ' WHERE szID = ' + @szID
)
서버: 메시지 170, 수준 15, 상태 1, 줄 1
줄 1: '=' 근처의 구문이 잘못되었습니다.
이런 에러메시지가 나오네요...
|