SQL Server Management Studio não está criando scripts para todos os objetos

3

Eu tenho tentado fazer o script de um banco de dados usando o SQL Server 2005 Management Studio. Eu não posso fazer isso para script alguns objetos. Ele scripts outros, mas pula alguns.

eu posso fornecer capturas de tela detalhadas

  • as opções selecionadas
  • incluindo todas as tabelas
  • a pasta para onde os arquivos de script irão
  • a pasta está vazia antes do script
  • o processo de script que diz Sucesso ao criar scripts de uma tabela
  • a pasta de destino não está mais vazia, com uma centena de arquivos de script
  • o script de algumas tabelas não está na pasta.

E o SSMS anterior não criaria scripts para algumas visualizações.

É uma coisa conhecida que a tarefa Gerar Scripts não gera scripts?

Atualizar

Problema conhecido no Microsoft Connect , mas a Microsoft não pôde reproduzir as etapas, então eles fecharam o ticket fechado.

Falha no SQL Server 2005, também falha no SQL Server 2008.

Atualizar dois

Algumas perguntas básicas:

1.Que versão do SQL Server?

 Microsoft SQL Server 2000 - 8.00.194 (Intel X86)
 Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86)
 Microsoft SQL Server 2008 - 10.0.2531.0 (Intel X86)
 Microsoft SQL Server 2008 - 10.0.5768.0 (X64)
 Microsoft SQL Server 2005 Management Studio: 9.00.4035.00
 Microsoft SQL Server 2008 Management Studio: 10.0.1600.22

2. Em que O / S você está correndo?

 Windows Server 2000
 Windows Server 2003
 Windows Server 2008
 Windows Server 2008 R2 Standard

3. Como você está entrando no servidor SQL?

 sa/password
 Trusted authentication

4.Verificou se sua conta tem acesso total a todos os objetos?

 Yes, i have access to all objects.

5.Você pode usar os objetos que não conseguem script? (por exemplo: selecione top (10) * de nonScriptingTable)

 Yes, all objects work fine.
 SQL Server Enterprise Manager can script the objects fine.

Atualizar três

Eles falham, não importa qual versão do SQL Server você script contra. Não foi um problema no Enterprise Manager:

Client Tools  SQL Server 2000  SQL Server 2005  SQL Server 2008
============  ===============  ===============  ===============
2000          Yes              n/a              n/a
2005          No               No               No
2008          No               No               No

Atualizar quatro

Nenhum erro encontrado no banco de dados usando:

DBCC CHECKDB
go
DBCC CHECKCONSTRAINTS
go
DBCC CHECKFILEGROUP
go
DBCC CHECKIDENT
go
DBCC CHECKCATALOG
go
EXECUTE sp_msforeachtable 'DBCC CHECKTABLE (''?'')'

Honk se você odeia o SSMS.

Atualização (quatro anos depois): Honk!

    
por Ian Boyd 19.09.2009 / 00:40

2 respostas

2

Eu escrevi um utilitário de linha de comando para rotear todos os objetos MSSQL via SMO.

Seria interessante saber se consegue criar scripts para todos os seus objetos. Se a ferramenta falhar em um único objeto, a exceção do SMO será gravada em stderr.

    
por 25.10.2009 / 18:24
0

Eu nunca tive esse problema antes.

Algumas perguntas básicas:

  1. Qual versão do SQL Server?
  2. Em que O / S você está correndo?
  3. Como você está se conectando ao servidor SQL?
  4. Você verificou que sua conta tem acesso total a todos os objetos?
  5. Você pode usar os objetos que falham no script? (por exemplo: selecione top (10) * de nonScriptingTable)

Com mais informações, talvez possamos oferecer alguma ajuda.

Atualização 1:

Você já tentou desanexar seu banco de dados 2000 e reconectá-lo a uma instância do SQL 2005/2008 e, em seguida, elevou o nível do banco de dados e, em seguida, tentou seu script?

    
por 19.09.2009 / 01:20