1

現在使用していないデータベースにスキーマを作成したいと考えています。次の構文を試しました。

CREATE SCHEMA MyDatabaseName.MySchemaName

「'.'付近の構文が正しくありません」というエラーが発生したため、CREATE SCHEMAはデータベース名の指定をサポートしていないようです。

を行うこともできますがUSE MyDatabaseName、記述しているコードがストアド プロシージャ内にあるため複雑です。

他にどのようなオプションがありますか?

4

2 に答える 2

1

sp_executesql次のように使用します。

exec MyDatabaseName.dbo.sp_executesql N'create schema MySchemaName'
于 2013-10-16T07:11:34.247 に答える
0

CREATE SCHEMA ステートメントは、同じバッチ内の他のステートメントと組み合わせることはできません。前のステートメントの後に GO コマンドを追加して、ステートメントを異なるバッチに分離することは機能するはずです。ストアド プロシージャ内では、次のクエリも機能します。

declare @str varchar(100)
set @str = 'CREATE SCHEMA MySchemaName'
exec (@str) 

お役に立てれば!!!

于 2013-10-16T06:06:11.430 に答える