하나의 매개 변수로 저장 프로 시저를 만들려고합니다. 저장 프로 시저가 업데이트 쿼리를 수행하도록하고 실행될 때 전달하는 매개 변수를 업데이트해야하는 테이블로 지정합니다. 매개 변수를 사용하여 프로 시저를 만드는 데 실패했습니다.SQL Server 저장 프로 시저 매개 변수
CREATE PROCEDURE cleanq7 @tablename varchar(100)
AS
BEGIN
UPDATE @tablename
SET IMPOSSIBLE_CASE = '1'
WHERE q7='1'
GO
내가받은 메시지 나는 이것이 실행하면
이Msg 102, Level 15, State 1, Procedure cleanq7, Line 6
Incorrect syntax near '1'.
내가 테스트 데이터베이스의 테이블에 그냥 들여 쓰기 업데이트 쿼리를 시도하고 예상대로 작용, 그래서 나는이 문제가되는 상상 저장 프로 시저를 선언하기위한 내 구문이 있습니다.
도움이 될 것입니다.
나는 GO 대신 END를 가져야한다고 생각합니다. – Mihai
QUOTENAME()을 사용하는 경우 UPTATE @ variable'이 허용되지 않으므로 동적 SQL을 사용해야합니다. –