Como faço para gerar scripts que irá reconstruir meu banco de dados MS SQL Server 2005 com os dados?

votos
3

Eu tenho um banco de dados SQL Server 2005, que eu gostaria de ser capaz de recriar a qualquer momento. Eu quero ser capaz de apontar para meu banco de dados e gerar um conjunto completo de scripts que não só irá criar todas as tabelas / views / Sprocs / funções que estão no banco de dados, mas também irá preencher todas as tabelas com dados.

Existem algumas ferramentas que fazem isso? Existe algum código-fonte aberto ou ferramentas gratuitas que fazem isso?

Publicado 20/08/2008 em 16:15
fonte usuário
Em outras línguas...                            


3 respostas

votos
7

O Assistente de publicação de banco de dados é uma grande ferramenta pouco para isso. Sua OSS e livre, que é difícil de bater.

Respondeu 20/08/2008 em 16:25
fonte usuário

votos
1

O que eu sempre fazer é deixá-MS SQL Management Studio criar o script para reconstruir banco de dados tabelas und vazias. Então eu uso outro script para gerar um arquivo de lote do MS-DOS para exportar / importar os dados via "bcp". Veja sql abaixo.

/* this is used to export */
use databaseXXX
select ('bcp databaseXXX..' + name + ' OUT ' + name + ' /eErrors.txt /b100 /n /Usa /Ppwd /Sserver') as bcp 
from 
  sysobjects 
where 
  type = 'U' 
order by 
  [name]


/* this is used to import */
use databaseXXX
select ('bcp databaseXXX..' + name + ' IN ' + name + ' /E /eErrors.txt /b100 /n /Usa /Ppwd /Sserver') as bcp 
from 
  sysobjects 
where 
  type = 'U' 
order by 
  [name]

Funciona para mim toda vez e é rápido. Se você salvar o script de geração de tabela em um arquivo que você pode colocar isso também em um arquivo batch através do comando sqlcmd.

Respondeu 20/08/2008 em 16:32
fonte usuário

votos
0

Verifique o seguinte para um procedimento que irá criar um script que irá gerar uma tabela e todos os seus dados. Você poderia envolvê-lo em outro proc armazenado que reiterou todas as tabelas e gerar um único script grande que irá regenerar tudo do zero.

http://anastasiosyal.com/archive/2007/04/25/5.aspx

Edit: Parece Will encontrou uma solução ainda melhor +1 para Will

Respondeu 20/08/2008 em 16:25
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more