19

Windows 7 (x64) を使用しており、SQL Server Express 2012 データベースを作成するための自動生成スクリプトがあります。

スクリプトは次のように開始します。

USE [master]
GO

 CREATE DATABASE [Example]
 CONTAINMENT = NONE
 ON  PRIMARY 
( NAME = N'Example', FILENAME = N'D:\Example.mdf' , SIZE = 4544KB ,
MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )
 LOG ON 
( NAME = N'Example_log', FILENAME = N'D:\Example_log.ldf' , SIZE = 3136KB ,
MAXSIZE = 2048GB , FILEGROWTH = 10%)
    GO
    ALTER DATABASE [Example] SET COMPATIBILITY_LEVEL = 100
    GO
    IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
    begin
    EXEC [Example].[dbo].[sp_fulltext_database] @action = 'enable'
    end
    GO
    ...

スクリプトの最初のエラーは

Msg 102, Level 15, State 1, Line 3
Incorrect syntax near 'CONTAINMENT'.

アイデアは、異なる SQL Server 2012 バージョンを使用して、あるサーバーから別のサーバーにデータベースを渡すことです。DBを別の場所に作成する必要がある場合に備えて、スクリプトを保持したかったのです。

自動生成されたスクリプトでこのエラーが発生するのはなぜですか?

4

1 に答える 1

25

を取り除くCONTAINMENT = NONE

これはデフォルトであるため、必要がなく、SQL Server Express がそれを詰まらせているようです。

于 2013-03-14T13:36:36.387 に答える