sp_create_removable (Transact-SQL)
Gilt für: SQL Server
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 einer zukünftigen Version von SQL Serverentfernt. Nutzen Sie diese Funktionen bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die diese Funktion zurzeit verwenden. Es wird empfohlen, stattdessen CREATE DATABASE zu verwenden.
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'
Ist der Name der Datenbank, die für die Verwendung auf Wechselmedien erstellt werden soll. dbname ist sysname.
[ @syslogical = ] 'syslogical'
Ist der logische Name der Datei, die die Systemkatalogtabellen enthält. syslogical ist sysname.
[ @sysphysical = ] 'sysphysical'
Ist der physische Name. Enthält einen vollqualifizierten Pfad der Datei, die die Systemkatalogtabellen enthält. sysphysisch ist nvarchar(260).
[ @syssize = ] syssize
Ist die Größe in Megabyte der Datei, die die Systemkatalogtabellen enthält. syssize ist int. Die Mindest syssize ist 1.
[ @loglogical = ] 'loglogical'
Ist der logische Name der Datei, die das Transaktionsprotokoll enthält. loglogical ist sysname.
[ @logphysical = ] 'logphysical'
Ist der physische Name. Enthält einen vollqualifizierten Pfad der Datei, die die Transaktionsprotokolltabellen enthält. logphysisch ist nvarchar(260).
[ @logsize = ] logsize
Ist die Größe der Datei in Megabyte, die das Transaktionsprotokoll enthält. logsize is int. Die Mindestprotokollisierung beträgt 1.
[ @datalogical1 = ] 'datalogical'
Ist der logische Name einer 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'
Ist der physische Name. Enthält einen vollqualifizierten Pfad der Datei, die die Datentabellen enthält. dataphysical is nvarchar(260).
[ @datasize1 = ] 'datasize'
Ist die Größe in Megabyte einer Datei, die Datentabellen enthält. Die Datengröße ist int. Die Mindestdatengröße beträgt 1.
Rückgabecodewerte
„0“ (erfolgreich) oder „1“ (fehlerhaft)
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 Serverwird 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 |
Gesichert | Zugeordnet |
Wiederhergestellt | Getrennt |
Hinweis
SQL Server legt keine Daten- und Protokolldateiberechtigungen 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\MSSQL13.MSSQLSERVER\MSSQL\Data\invsys.mdf'
, 2,
'invlog',
'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\invlog.ldf', 4,
'invdata',
'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\invdata.ndf',
10;
Weitere Informationen
Anfügen und Trennen von Datenbanken (SQL Server)
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)
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Tickets als Feedbackmechanismus für Inhalte auslaufen lassen und es durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unter:Einreichen und Feedback anzeigen für