Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Vytváří databázi vyměnitelných médií. Vytvoří tři nebo více souborů (jeden pro systémové katalogové tabulky, jeden pro transakční log a jeden nebo více pro datové tabulky) a umístí databázi na tyto soubory.
Důležité
Tato funkce bude odebrána v budoucí verzi SQL Serveru. Nepoužívejte tuto funkci v nové vývojové práci a naplánujte úpravu aplikací, které tuto funkci aktuálně používají. Doporučujeme místo toho používat CREATE DATABASE.
Syntax
sys.sp_create_removable
[ [ @dbname = ] N'dbname' ]
[ , [ @syslogical = ] N'syslogical' ]
[ , [ @sysphysical = ] N'sysphysical' ]
[ , [ @syssize = ] syssize ]
[ , [ @loglogical = ] N'loglogical' ]
[ , [ @logphysical = ] N'logphysical' ]
[ , [ @logsize = ] logsize ]
[ , [ @datalogical1 = ] N'datalogical1' ]
[ , [ @dataphysical1 = ] N'dataphysical1' ]
[ , [ @datasize1 = ] datasize1 ]
[ , ... ]
[ , [ @datalogical16 = ] N'datalogical16' ]
[ , [ @dataphysical16 = ] N'dataphysical16' ]
[ , [ @datasize16 = ] datasize16 ]
[ ; ]
Arguments
[ @dbname = ] N'dbname'
Název databáze pro vytvoření pro použití na snímatelných médiích.
@dbname je sysname , s výchozím NULL.
[ @syslogical = ] N'syslogical'
Logický název souboru, který obsahuje tabulky systémového katalogu.
@syslogical je sysname s výchozím nastavením NULL.
[ @sysphysical = ] N'sysphy'
Fyzické jméno.
@sysphysical je nvarchar(260), s výchozím hodnotou NULL. Tato hodnota zahrnuje plně kvalifikovanou cestu souboru, který uchovává tabulky systémového katalogu.
[ @syssize = ] syssize
Velikost souboru obsahujícího systémové katalogové tabulky v megabajtech.
@syssize je int, s výchozím nastavením NULL.
[ @loglogical = ] N'loglogical'
Logický název souboru, který obsahuje transakční záznam.
@loglogical je sysname s výchozím nastavením NULL.
[ @logphysical = ] N'logfyzické'
Fyzické jméno.
@logphysical je nvarchar(260), s výchozím hodnotou NULL. Tato hodnota zahrnuje plně kvalifikovanou cestu souboru, který obsahuje transakční záznam.
[ @logsize = ] logsize
Velikost souboru obsahujícího transakční záznam v megabajtech.
@logsize je int, s minimální hodnotou 1.
[ @datalogical1 = ] N'datalogical1'
Logický název souboru, který obsahuje datové tabulky.
@datalogical1 je sysname s výchozím nastavením NULL.
Musí existovat 1 mezi a 16 datovými soubory. Obvykle se vytvoří více datových souborů, když se očekává, že databáze bude rozsáhlá, a musí být distribuována na více discích.
[ @dataphysical1 = ] N'dataphysical1'
Fyzické jméno.
@dataphysical1 je nvarchar(260), s výchozím hodnotou NULL. Tato hodnota zahrnuje plně kvalifikovanou cestu souboru obsahujícího datové tabulky.
[ @datasize1 = ] datasize1
Velikost souboru obsahujícího datové tabulky v megabajtech.
@datasize1 je int, s minimální hodnotou 1.
Hodnoty návratového kódu
0 (úspěch) nebo 1 (selhání).
Sada výsledků
Žádné.
Remarks
Pokud chcete vytvořit kopii své databáze na vyměnitelném médiu, například na kompaktním disku, a distribuovat databázi dalším uživatelům, použijte tento uložený postup.
Permissions
Vyžaduje oprávnění CREATE DATABASE, CREATE ANY DATABASEnebo ALTER ANY DATABASE.
Pro udržení kontroly nad využitím disku na instanci SQL Server je oprávnění k vytváření databází obvykle omezeno na několik přihlašovacích účtů.
Oprávnění k datům a souborům protokolu
Kdykoli jsou na databázi prováděny určité operace, jsou na jejích datech a logovacích souborech nastavena odpovídající oprávnění. Oprávnění zabraňují náhodné manipulaci se soubory, pokud se nacházejí v adresáři s otevřenými oprávněními.
| Provoz na databázi | Oprávnění nastavená na soubory |
|---|---|
| Upraveno pro přidání nového souboru | Vytvořeno |
| Záloha | Připojený |
| Obnovené | Odděleno |
Note
SQL Server nenastavuje oprávnění k datům a logovacím souborům.
Examples
Následující příklad vytváří databázi inventory jako přenosnou databázi.
EXECUTE sp_create_removable
'inventory',
'invsys',
'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\Data\invsys.mdf',
2,
'invlog',
'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\Data\invlog.ldf',
4,
'invdata',
'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\Data\invdata.ndf',
10;