Condividi tramite


sp_create_removable (Transact-SQL)

Crea un database su supporti rimovibili. Crea tre o più file, uno per le tabelle del catalogo di sistema, uno per il log delle transazioni e uno o più per le tabelle dei dati, quindi memorizza il database in tali file.

Nota importanteImportante

Questa caratteristica verrà rimossa a partire da una delle prossime versioni di Microsoft SQL Server. Evitare di utilizzare questa caratteristica in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata. È invece consigliabile utilizzare CREATE DATABASE.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

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 ]

Argomenti

  • [ @dbname= ] 'dbname'
    Nome del database da creare per utilizzarlo sul supporto rimovibile. dbname è sysname.

  • [ @syslogical= ] 'syslogical'
    Nome logico del file contenente le tabelle del catalogo di sistema. syslogical è sysname.

  • [ @sysphysical= ] 'sysphysical'
    Nome fisico. Include il percorso completo del file contenente le tabelle del catalogo di sistema. sysphysical è nvarchar(260).

  • [ @syssize= ] syssize
    Dimensioni in megabyte del file contenente le tabelle del catalogo di sistema. syssize è int. Il valore minimo di syssize è 1.

  • [ @loglogical= ] 'loglogical'
    Nome logico del file contenente il log delle transazioni. loglogical è sysname.

  • [ @logphysical= ] 'logphysical'
    Nome fisico. Include il percorso completo del file contenente il log delle transazioni. logphysical è nvarchar(260).

  • [ @logsize= ] logsize
    Dimensioni in megabyte del file contenente il log delle transazioni. logsize è int. Il valore minimo di logsize è 1.

  • [ @datalogical1= ] 'datalogical'
    Nome logico di un file contenente le tabelle di dati. datalogical è sysname.

    Il numero dei file di dati è compreso tra 1 e 16. Vengono in genere creati più file di dati quando si prevede che il database sia di grandi dimensioni e debba essere pertanto suddiviso su più dischi.

  • [ @dataphysical1= ] 'dataphysical'
    Nome fisico. Include il percorso completo del file contenente le tabelle di dati. dataphysical è nvarchar(260).

  • [ @datasize1= ] 'datasize'
    Dimensioni in megabyte di un file contenente le tabelle di dati. datasize è int. Il valore minimo di datasize è 1.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Set di risultati

Nessuno

Osservazioni

Utilizzare questa stored procedure se si desidera creare una copia del database su un supporto rimovibile, ad esempio un CD, e distribuire il database ad altri utenti.

Autorizzazioni

È necessario disporre dell'autorizzazione CREATE DATABASE, CREATE ANY DATABASE o ALTER ANY DATABASE.

Per mantenere il controllo sull'utilizzo del disco per un'istanza di SQL Server, l'autorizzazione per la creazione dei database è in genere limitata a pochi account di accesso.

Autorizzazioni per i file di dati e di log

In SQL Server 2005 vengono impostate autorizzazioni specifiche per i file di dati e di log in ogni database. Le autorizzazioni seguenti vengono impostate quando le operazioni elencate di seguito vengono eseguite in un database.

Creazione

Modifica per l'aggiunta di un nuovo file

Collegamento

Esecuzione del backup

Scollegamento

Ripristino

Le autorizzazioni consentono di evitare che vengano accidentalmente alterati i file che si trovano in una directory con autorizzazioni aperte. Per ulteriori informazioni, vedere Protezione dei dati e dei file di log.

Esempi

Nell'esempio seguente il database inventory viene creato come database rimovibile.

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