一尘不染

有没有一种方法可以持久保留变量?

sql

有没有一种方法可以持久保留变量?

Declare @bob as varchar(50);
Set @bob = 'SweetDB'; 
GO
USE @bob  --- see note below
GO
INSERT INTO @bob.[dbo].[ProjectVersion] ([DB_Name], [Script]) VALUES (@bob,'1.2')

有关“ USE @bob”行,请参见此SO问题。


阅读 127

收藏
2021-03-17

共1个答案

一尘不染

go命令用于将代码拆分为单独的批处理。如果这正是您要执行的操作,则应使用它,但这意味着批次实际上是分开的,并且您不能在它们之间共享变量。

在您的情况下,解决方案很简单;您只需删除go语句,该代码中就不需要它们。

旁注:您不能在use语句中使用变量,它必须是数据库的名称。

2021-03-17