CREATE SCHEMA
ステートメント内に複数のビューを作成するにはどうすればよいですか?
SCHEMA
を作成し、同じステートメント内に2つのビューを作成したいので、これらのステートメントはすべて1つのユニットとして機能しますか?一緒に成功するか失敗するか!
MSDNから:http://msdn.microsoft.com/en-us/library/ms189462.aspx
「CREATESCHEMAは、スキーマ、それに含まれるテーブルとビュー、および単一のステートメントで保護可能な任意のスキーマに対するGRANT、REVOKE、またはDENY権限を作成できます。CREATESCHEMAトランザクションはアトミックです。CREATESCHEMAステートメントの実行中にエラーが発生した場合、指定されたセキュリティ保護対象は作成されず、アクセス許可も付与されません。」
、
これどうやってするの?私はこれを試しました:
CREATE SCHEMA [MYSCHEMA] AUTHORIZATION [dbo]
CREATE VIEW [VIEW1]
AS
SELECT [ID]
,[NAME]
FROM [dbo].[TABLE1]
/* Here is the Problem */
GO
CREATE VIEW [VIEW2]
AS
SELECT [ID]
,[NAME]
FROM [dbo].[TABLE2]
GO
GO
最初のビューの作成直後にステートメントを含めると、スクリプトは実行されますが、2番目のビューは、の下ではなくスキーマのVIEW2
下に作成され、単一のユニットとしても実行されません。dbo
MYSCHEMA
GO
最初のビューの後にを削除すると、次のようなエラーが発生します
CREATE VIEWは、バッチの最初のステートメントである必要があります
2番目のCREATE VIEW
ステートメント。
CREATE SCHEMA
これを解決し、ステートメントの一部として両方のビューを作成するにはどうすればよいですか?