sp_create_removable (Transact-SQL)

Erstellt eine Datenbank für austauschbare Medien. Erstellt drei oder mehr Dateien (eine für die Systemkatalogtabellen, eine für das Transaktionsprotokoll und eine oder mehrere für die Datentabellen) und platziert die Datenbank in diesen Dateien.

Wichtiger HinweisWichtig

Diese Funktion wird in zukünftigen Versionen von Microsoft SQL Server nicht mehr bereitgestellt. Verwenden Sie diese Funktion beim Entwickeln neuer Anwendungen nicht, und planen Sie das Ändern von Anwendungen, in denen es zurzeit verwendet wird. Stattdessen sollte CREATE DATABASE verwendet werden.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

sp_create_removable 
   [ @dbname = ] 'dbname', 
   [ @syslogical= ] 'syslogical', 
   [ @sysphysical = ] 'sysphysical', 
   [ @syssize = ] syssize, 
   [ @loglogical = ] 'loglogical', 
   [ @logphysical = ] 'logphysical', 
   [ @logsize = ] logsize, 
   [ @datalogical1 = ] 'datalogical1', 
   [ @dataphysical1 = ] 'dataphysical1', 
   [ @datasize1 = ] datasize1 , 
   [ @datalogical16 = ] 'datalogical16', 
   [ @dataphysical16 = ] 'dataphysical16', 
   [ @datasize16 = ] datasize16 ]

Argumente

  • [ @dbname= ] 'dbname'
    Der Name der zu erstellenden Datenbank, die auf austauschbaren Medien gespeichert werden soll. dbname ist ein Wert vom Datentyp sysname.

  • [ @syslogical= ] 'syslogical'
    Der logische Name der Datei, die die Systemkatalogtabellen enthält. syslogical ist ein Wert vom Datentyp sysname.

  • [ @sysphysical= ] 'sysphysical'
    Der physische Name (einschließlich vollständiger Pfadangabe) der Datei, die die Systemkatalogtabellen enthält. sysphysical ist ein Wert vom Datentyp nvarchar(260).

  • [ @syssize= ] syssize
    Die in MB angegebene Größe der Datei, die die Systemkatalogtabellen enthält. syssize ist ein Wert vom Datentyp int. Der Mindestwert für syssize beträgt 1.

  • [ @loglogical= ] 'loglogical'
    Der logische Name der Datei, die das Transaktionsprotokoll enthält. loglogical ist ein Wert vom Datentyp sysname.

  • [ @logphysical= ] 'logphysical'
    Der physische Name (einschließlich vollständiger Pfadangabe) der Datei, die das Transaktionsprotokoll enthält. logphysical ist ein Wert vom Datentyp nvarchar(260).

  • [ @logsize= ] logsize
    Die in MB angegebene Größe der Datei, die das Transaktionsprotokoll enthält. logsize ist ein Wert vom Datentyp int. Der Mindestwert für logsize beträgt 1.

  • [ @datalogical1= ] 'datalogical'
    Der logische Name der Datei, die die Datentabellen enthält. datalogical ist ein Wert vom Datentyp sysname.

    Die Anzahl von Datendateien muss zwischen 1 und 16 liegen. In der Regel wird mehr als eine Datendatei erstellt, wenn zu erwarten ist, dass die Datenbank umfangreich wird und auf mehrere Datenträger verteilt werden muss.

  • [ @dataphysical1= ] 'dataphysical'
    Der physische Name (einschließlich vollständiger Pfadangabe) der Datei, die die Datentabellen enthält. dataphysical ist ein Wert vom Datentyp nvarchar(260).

  • [ @datasize1= ] 'datasize'
    Die in MB angegebene Größe der Datei, die die Datentabellen enthält. datasize ist ein Wert vom Datentyp int. Der Mindestwert für datasize beträgt 1.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Resultsets

Keine

Hinweise

Verwenden Sie diese gespeicherte Prozedur, wenn Sie eine Kopie einer Datenbank auf austauschbaren Medien erstellen, wie z. B. auf CD, und die Datenbank an andere Benutzer verteilen möchten.

Berechtigungen

Erfordert die Berechtigung CREATE DATABASE, CREATE ANY DATABASE oder ALTER ANY DATABASE.

Zur Steuerung der Datenträgernutzung einer Instanz von SQL Server wird die Berechtigung zum Erstellen von Datenbanken in der Regel auf einige wenige Anmeldekonten beschränkt.

Berechtigungen für Daten und Protokolldateien

In SQL Server 2005 werden Berechtigungen für die Daten und Protokolldateien der einzelnen Datenbanken festgelegt. Die folgenden Berechtigungen werden festgelegt, wenn die folgenden Vorgänge auf eine Datenbank angewendet werden:

Erstellt

Ändern, um eine neue Datei hinzuzufügen

Anfügen

Sichern

Trennen

Wiederherstellen

Durch die Berechtigungen wird verhindert, dass die Dateien versehentlich manipuliert werden, wenn sie sich in einem Verzeichnis mit offenen Berechtigungen befinden. Weitere Informationen finden Sie unter Sichern von Daten- und Protokolldateien.

Beispiel

In diesem Beispiel wird die inventory-Datenbank als austauschbare Datenbank erstellt.

EXEC sp_create_removable 'inventory', 
   'invsys',
   'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\invsys.mdf'
, 2, 
   'invlog',
   'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\invlog.ldf', 4,
   'invdata',
   'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\invdata.ndf', 
10