我使用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版本.我想保留脚本,以防我需要在其他地方创建数据库.
解决方法
摆脱CONTAINMENT = NONE
这是默认的,所以你不需要它,sql Server Express似乎阻止它.