Używam Windows 7 (x64) i mam wygenerowany automatycznie skrypt do tworzenia bazy danych SQL Server Express 2012.CONTAINMENT jest oznaczony jako niepoprawna składnia w automatycznie generowanym skrypcie bazy danych.
Skrypt rozpoczyna się następująco:
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
...
Skrypt pierwszy błąd jest
Msg 102, Level 15, State 1, Line 3
Incorrect syntax near 'CONTAINMENT'.
Chodzi o to, aby przejść do bazy danych z jednego serwera na drugi z innym SQL Server 2012 wersje. Chciałem zachować skrypty na wypadek, gdyby potrzebowałem stworzyć DB gdzie indziej.
Dlaczego wygenerowany automatycznie skrypt powoduje ten błąd?
Dzięki @Sebastian Meine masz rację. Również wróciłem do serwera i utworzyłem skrypt z wersją 2012, domyślnie był tworzony jako 2008 R2, to był główny problem. – Pimenta
@Pimenta Jak stworzyłeś skrypty jako 2012 zamiast 2008 na serwerze 2008? – slayernoah
@slayernoah Serwer jest 2012, ale konfiguracja karty debugowania została ustawiona na 2008. – Pimenta