2011-02-23 3 views
0

특정 테이블에있는 레코드를 계산하는 샘플 프로 시저를 작성하려면 여기에서 텍스트 파일에서 테이블 이름을 가져옵니다. Fo이 단지 텍스트 파일에서 테이블 이름을 가져 와서 tem 테이블에 저장하는 샘플 프로 시저를 작성하지만 테이블 이름을 할당하고 전달하는 동안 아무 것도 간단한 예제로 수행하는 방법을 제안 할 수 있습니다.T-SQL에서 동적으로 테이블 이름을 전달하는 방법

+0

이것은 T-SQL에서해야 할 일이 아닙니다. 쿼리를 어셈블하려면 중간 계층 구성 요소에서 쿼리를 수행해야합니다. – Thomas

답변

2

테이블 이름 매개 변수를 사용하여 동적 SQL을 빌드하고 아래에 표시된 것처럼 EXEC를 사용하여 확장 할 수 있습니다.

Create procedure Proc1 
@TableName varchar(MAX) 
as 
.. 
... 
DECLARE @sqltxt varchar(1000) 
select @sqltxt = 'select count(*) from ' + quotename(@TableName) 
exec (@sqltxt) 
... 
... 
+1

이것을 할 예정이라면'Quotename'을 사용해야합니다 :'Set @sqltxt = 'Select ... from + Quotename (@TableName)'. – Thomas

+0

exec (@sql) exec (@sqltxt) – Kashif

+0

합니다 @Muhammad - 내 대답을 수정 –

관련 문제