回答

收藏

使用变量创建架构的脚本

技术问答 技术问答 283 人阅读 | 0 人回复 | 2023-09-12

令我惊讶的是,这种情况以前从未发生过,但我在搜索中找不到任何东西,无论是在这里还是在其他地方。我发现了一些模糊的相似之处,这表明问题在我的脚本中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    解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则