Freigeben über


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.

Wichtig

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.

Gilt für: SQL Server (SQL Server 2008 bis aktuelle Version).

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 Datenbank, die zur Verwendung auf austauschbaren Medien erstellt werden soll. dbname ist sysname.

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

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

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

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

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

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

  • [ @datalogical1= ] 'datalogical'
    Der logische Name der Datei, die die Datentabellen enthält. datalogical ist 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. Enthält einen vollqualifizierten Pfad der Datei, die die Datentabellen enthält. dataphysical ist vom Datentyp nvarchar(260).

  • [ @datasize1= ] 'datasize'
    Die in MB angegebene Größe der Datei, die die Datentabellen enthält. datasize ist int. Die Mindestgröße 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

Bei der Durchführung bestimmter Vorgänge an einer Datenbank werden die entsprechenden Berechtigungen für ihre Daten und Protokolldateien festgelegt. Durch die Berechtigungen wird verhindert, dass die Dateien versehentlich manipuliert werden, wenn sie sich in einem Verzeichnis mit offenen Berechtigungen befinden.

Vorgang auf Datenbank

Berechtigungen, die für die Dateien festgelegt sind

Ändern, um eine neue Datei hinzuzufügen

Erstellt

Sichern

Anfügen

Wiederherstellen

Trennen

Hinweis

SQL Server legt keine Berechtigungen für Daten und Protokolldateien fest.

Beispiele

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

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

Siehe auch

Verweis

sp_certify_removable (Transact-SQL)

ALTER DATABASE (Transact-SQL)

sp_dbremove (Transact-SQL)

sp_detach_db (Transact-SQL)

sp_helpfile (Transact-SQL)

sp_helpfilegroup (Transact-SQL)

Gespeicherte Systemprozeduren (Transact-SQL)

Konzepte

Anfügen und Trennen von Datenbanken (SQL Server)