0
我想以編程方式將一組表和過程填充到新的數據庫中。如何使用動態sql在最近創建的數據庫中創建表?
然後我準備了一個初始化腳本,我將在必須創建新數據庫的過程中使用它。
我試圖用一個簡單的例子,並沒有工作:
CREATE PROCEDURE PROCEDURETOREPLICATECOMMONSCHEMA
@databaseName NVARCHAR(40)
AS
BEGIN
DECLARE @sqlCreation NVARCHAR(MAX);
SET @sqlCreation = '
USE MASTER;
EXEC(''CREATE DATABASE ' + @databaseName + ''');
EXEC(''USE ' + @databaseName + ''');
CREATE TABLE Testing
(
TestPk int,
TestDescription nvarchar(80)
);
';
PRINT @sqlCreation;
EXEC sp_executesql @sqlCreation;
END
GO
當我執行這個程序,它會創建主數據庫,而不是TestDatabase1
表裏面Testing
。
EXEC PROCEDURETOREPLICATECOMMONSCHEMA 'TestDatabase1'
GO