Sql server 在创建架构时指定数据库
我想在不是我当前的数据库中创建一个架构。我尝试了以下语法:Sql server 在创建架构时指定数据库,sql-server,tsql,database-schema,Sql Server,Tsql,Database Schema,我想在不是我当前的数据库中创建一个架构。我尝试了以下语法: CREATE SCHEMA MyDatabaseName.MySchemaName 并出现错误“靠近“”的语法不正确”,因此它似乎不支持指定数据库名称 我可以使用MyDatabaseName执行操作,但这很复杂,因为我正在编写的代码位于存储过程中 我还有哪些其他选项?CREATE SCHEMA语句不能与同一批中的其他语句组合。通过在上一个语句后添加GO命令将语句分为不同的批应该可以工作。在存储过程中,以下查询也将起作用: declar
CREATE SCHEMA MyDatabaseName.MySchemaName
并出现错误“靠近“”的语法不正确”,因此它似乎不支持指定数据库名称
我可以使用MyDatabaseName执行操作,但这很复杂,因为我正在编写的代码位于存储过程中
我还有哪些其他选项?CREATE SCHEMA语句不能与同一批中的其他语句组合。通过在上一个语句后添加GO命令将语句分为不同的批应该可以工作。在存储过程中,以下查询也将起作用:
declare @str varchar(100)
set @str = 'CREATE SCHEMA MySchemaName'
exec (@str)
希望这有帮助 CREATE SCHEMA语句不能与同一批中的其他语句组合。通过在上一条语句后添加GO命令将语句分为不同批应该可以工作。在存储过程中,以下查询也将起作用:
declare @str varchar(100)
set @str = 'CREATE SCHEMA MySchemaName'
exec (@str)
希望这有帮助 像这样使用sp_executesql
:
exec MyDatabaseName.dbo.sp_executesql N'create schema MySchemaName'
像这样使用sp_executesql
:
exec MyDatabaseName.dbo.sp_executesql N'create schema MySchemaName'
我真的不明白这如何解决我的问题。。。使用
EXEC
我可以做一个USE database
,但我不想做。我真的不知道这是如何解决我的问题的。。。使用EXEC
我可以做一个USE-database
,但我不想这样做。