sp_create_removable (Transact-SQL)

Aplica-se a:SQL Server

Cria um banco de dados de mídia removível. Cria três ou mais arquivos (um para as tabelas de catálogo de sistema, um para o log de transações e um ou mais para as tabelas de dados) e coloca o banco de dados nesses arquivos.

Importante

Esse recurso será removido em uma versão futura do SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam. Recomendamos que você use CREATE DATABASE em vez disso.

Convenções de sintaxe de Transact-SQL

Sintaxe

  
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 ]  

Argumentos

[ @dbname = ] 'dbname' É o nome do banco de dados a ser criado para uso em mídia removível. dbname é sysname.

[ @syslogical = ] 'syslogical' É o nome lógico do arquivo que contém as tabelas de catálogo do sistema. syslogical é sysname.

[ @sysphysical = ] 'sysphysical' É o nome físico. Isso inclui um caminho totalmente qualificado do arquivo que contém as tabelas de catálogo de sistema. sysphysical é nvarchar(260).

[ @syssize = ] syssize É o tamanho, em megabytes, do arquivo que contém as tabelas de catálogo do sistema. syssize é int. O syssize mínimo é 1.

[ @loglogical = ] 'loglogical' É o nome lógico do arquivo que contém o log de transações. loglogical é sysname.

[ @logphysical = ] 'logphysical' É o nome físico. Isso inclui um caminho totalmente qualificado do arquivo que contém o log de transações. logphysical é nvarchar(260).

[ @logsize = ] logsize É o tamanho, em megabytes, do arquivo que contém o log de transações. logsize é int. O tamanho mínimo do log é 1.

[ @datalogical1 = ] 'datalogical' É o nome lógico de um arquivo que contém as tabelas de dados. datalogical é sysname.

Deve ser de 1 a 16 arquivos de dados. Geralmente, mais de um arquivo de dados é criado quando é esperado que o banco de dados seja grande e deve ser distribuído em vários discos.

[ @dataphysical1 = ] 'dataphysical' É o nome físico. Isso inclui um caminho totalmente qualificado do arquivo que contém as tabelas de dados. dataphysical é nvarchar(260).

[ @datasize1 = ] 'datasize' É o tamanho, em megabytes, de um arquivo que contém tabelas de dados. datasize é int. O tamanho mínimo dos dados é 1.

Valores do código de retorno

0 (êxito) ou 1 (falha)

Conjuntos de resultados

Nenhum

Comentários

Se você quiser fazer uma cópia de seu banco de dados em mídia removível, como um CD, e distribuir o banco de dados a outros usuários, use este procedimento armazenado.

Permissões

Requer a permissão CREATE DATABASE, CREATE ANY DATABASE ou ALTER ANY DATABASE.

Para manter controle sobre o uso do disco em uma instância do SQL Server, a permissão para criar bancos de dados geralmente é limitada a algumas contas de logon.

Permissões em arquivos de dados e de log

Sempre que determinadas operações são executadas em um banco de dados, as permissões correspondentes são definidas nos respectivos arquivos de dados e de log. As permissões evitam que os arquivos sejam violados acidentalmente caso residam em um diretório com permissões abertas.

Operação no banco de dados Permissões definidas em arquivos
Modificado para adicionar um novo arquivo Criado em
Incluído em backup Anexado
Restaurado Desanexado

Observação

O SQL Server não define permissões de dados e arquivos de log.

Exemplos

O exemplo a seguir cria o banco de dados inventory como um banco de dados removível.

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;  

Confira também

Anexar e desanexar o banco de dados (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)
Procedimentos armazenados do sistema (Transact-SQL)