0
테이블을 업데이트 할 저장 프로 시저를 만들려고합니다. 프로 시저가 두 테이블을 조인하고 변수 (@tablename
)를 사용하여 테이블 이름을 전달하려고합니다.SQL Server 저장 프로 시저의 매개 변수를 사용하여 테이블 이름 전달
이 오류가 생성됩니다
테이블 변수 "@tablename"를 선언해야합니다.
내 코드 : 당신이 어떤 데이터베이스를 포함하는
Create Procedure dbo.SpUpdate (@TableName varchar(50))
as
begin
DECLARE @SqlText NVARCHAR(MAX)
SET @SqlText =
'Update a
Set AgentNumber=''5'',
From dbo.CustomerList a
join ' + QUOTENAME(@tablename) + ' b
on a.customerid= b.customerid'
EXEC sp_executesql @SqlText
end
체크 아웃 동적 SQL –
업데이트 질문 :이 스크립트를 사용할 수 있습니다
– Twelfth아래 수정 프로그램 외에도 여기에 몇 가지 다른 문제가 있습니다. 업데이트의 첫 번째 줄 뒤에 쉼표가 있지만 단일 열만 업데이트하고 있습니다. 대소 문자를 구분하는 데이터 정렬이있는 경우 TableName <> tablename –