【发布时间】:2020-01-14 19:35:51
【问题描述】:
我正在尝试更改数据库的架构,通常,我只需将变量替换为数据库名称即可解决此问题。但是,我正在尝试检查它自己在哪个数据库上运行。
我已经在其他数据库上运行过它,它可以工作。但是,由于某种原因,一些数据库会在错误之后抛出。
“@ThisDB”附近的语法错误
--Set current DB as @ThisDB
DECLARE @ThisDB NVARCHAR(50)
SET @ThisDB = DB_NAME()
--Change Schema of @ThisDB
USE @ThisDB -- <= Error occurs here
DROP SCHEMA @ThisDB
DROP USER @ThisDB
ALTER AUTHORIZATION ON DATABASE::@ThisDB TO @ThisDB
老实说,我很确定这里的代码是正确的。因为我知道它在其他数据库上运行。
我的问题是为什么它不能在某些数据库上运行。
【问题讨论】:
标签: sql-server variables