令我惊讶的是,这种情况以前从未发生过,但我在搜索中找不到任何东西,无论是在这里还是在其他地方。我发现了一些模糊的相似之处,这表明问题在我的脚本中Use命令只在那一行中有效,但没有指示如何解决这个问题。 2 ^9 e. U( q, s4 z) l% {! I我正在尝试做的:创建一个包含所有常见模式和表格的模板数据库的通用脚本。标头中应设置所有变量(如数据库名称),以便根据需要更改,硬编码值只能在没有任何危险搜索和替换操作的情况下操作脚本。) R. U8 X# |2 T2 M
问题是什么:我无法在正确的数据库中生成架构;它们都是在主人身上生成的 试图显式设置数据库没有帮助;当我第一次收到操作错误时。6 a$ |+ m5 J0 f) R: i/ r( U
我的技能水平:长期访问用户,但仍在探索SQL Server的脚步。我敢肯定(希望如此),这对于进一步爬坡的人来说是非常容易的。. O! p* @! [% r T+ V
有人知道我该怎么办吗?(现有代码显示在下面。 2 J9 G8 k! s( LDECLARE @DBName NVARCHAR(50) = 'TheDBName';-- Assume that there's a bunch of code to drop and create the database goes here.-- This code executes correctly.SET @SQL = 'Use [' @DBName ;Print @SQL;EXEC(@SQL);SET @Counter = 1;WHILE @Counter <=3 BEGIN SET @SQL = 'CREATE SCHEMA [' CASE @Counter WHEN 1 THEN 'Schema WHEN 2 THEN 'Schema WHEN 3 THEN 'Schema END SET @SQL = @SQL AUTHORIZATION [dbo] PRINT 'Creating Schemas,' @SQL; Exec(@SQL); SET @Counter = @Counter 1; END & ^, Q9 l) O% H3 ] h" X+ H解决方案: