Partilhar via


sp_create_removable (Transact-SQL)

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.

Observação importanteImportante

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

Ícone de vínculo de tópico Convenções da sintaxe 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 de 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 logsize mínimo é 1.

  • [ @datalogical1= ] 'datalogical'
    É o nome lógico do 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 as tabelas de dados. datasize é int. O datasize mínimo é 1.

Valores de 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

Começando pelo SQL Server 2005, sempre que certas operações são executadas em um banco de dados, as permissões correspondentes são definidas em seus dados e arquivos 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

Backup

Anexado

Restaurado

Desanexado

ObservaçãoObservação

O SQL Server 2005 Express Edition não define dados e permissões de 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\MSSQL11.MSSQLSERVER\MSSQL\Data\invsys.mdf'
, 2, 
   'invlog',
   'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\invlog.ldf', 4,
   'invdata',
   'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\invdata.ndf', 
10

Consulte também

Referência

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)

Conceitos

Anexar e desanexar bancos de dados (SQL Server)