Preciso criar um script de esquema de banco de dados para T-SQL para controle de origem de inclusão. A versão Express do SSMS não parece permitir que você faça o script de todo o banco de dados, apenas de tabelas individuais. Existem ferramentas gratuitas (scripts ou não) que podem fazer isso?
relate perguntas
-
Melhores práticas para conectar bancos de dados que estão em diferentes regiões geográficas
-
Quais são as principais causas de deadlocks e podem ser evitadas?
-
Quanto "Padding" coloco em meus Ãndices?
-
Existe um processo do tipo "práticas recomendadas" para os desenvolvedores seguirem para alterações no banco de dados?
-
Downgrade do SQL Server 2008 para 2005
Esse script SQL é uma ferramenta de script de tabela do SQL Server 2005 que escrevi para fazer engenharia reversa de um esquema de banco de dados para SQL. Pode fazer o que você quer. Carregue-o no SSMS e defina 'Results to Text' no menu. Em seguida, execute o script. Ele fará engenharia reversa da maioria dos principais objetos de banco de dados.
Não tenho certeza se isso funcionará no Express ou não, mas você pode procurar scripts SQL Powershell ... Confira este link . É uma transcrição aproximada de um vÃdeo SQL Powershell (o link para isso na página está quebrado, infelizmente). Especificamente, você está procurando o comando que se parece com este:
gci é Get-ChildItem, | apenas canaliza essa saÃda para o próximo comando, % é uma abreviação de foreach, $_ contém o item atual e estamos chamando a função .script().
Você deve ser capaz de salvar ou copiar essas informações em um arquivo.
Para scripts de dados, recomendo o SSMS Tools Pack .
Você pode fazer isso com a estrutura SMO e algo como Powershell .
Há uma série de tutoriais disponÃveis online.
Em resumo, você desejará criar um SMO UrnCollection para todos os objetos no banco de dados e, em seguida, passar esse UrnCollection para a classe SMO.Scripter para executar o script de todos os objetos.