모두 매우 유사한 저장 프로 시저 그룹을 만들거나 설정하는 스크립트를 만들려고합니다.SQL은 동적으로 저장 프로 시저를 생성합니까?
그래서이 코드를 반복하면서 필요하다면 @DATABASE_NAME
과 @TableName
을 변경하려고합니다. '/ ALTER 절차 만들기'
말을/* Start loop */ DECLARE @create_stored_procedure nvarchar(max) SET @create_stored_procedure = N' USE [' + @DATABASE_NAME + '] CREATE PROCEDURE [dbo].[sproc_imp_' + @TableName + '] AS BEGIN PRINT(''doing something'') END' EXEC sp_executesql @statement = @create_stored_procedure /* End loop */
하지만 점점 오전 오류는 쿼리 일괄 처리에서 첫 번째 문이어야합니다.
또는
개체 이름에 접두어로 데이터베이스 이름을 지정하는 것을 허용하지 않습니다 '/ ALTER 절차 만들기'.
모든 온라인 솔루션은 GO를 사용하여 제안하지만 동적 SQL에서는 작동하지 않습니다.
누구나 SQL Server 2005에 대한 가능한 해결책을 알고 있습니까?
두 개의 동적 SQL로'use db' 및'create procedure'를 분할하여 시도 했습니까? – Nithesh