Você está offline; aguardando reconexão

Instantâneo de publicação de mesclagem falha com o erro "Falha de Script" no SQL Server

IMPORTANTE: Este artigo foi traduzido pelo software de tradução automática da Microsoft e eventualmente pode ter sido editado pela Microsoft Community através da tecnologia Community Translation Framework (CTF) ou por um tradutor profissional. A Microsoft oferece artigos traduzidos automaticamente por software, por tradutores profissionais e editados pela comunidade para que você tenha acesso a todos os artigos de nossa Base de Conhecimento em diversos idiomas. No entanto, um artigo traduzido pode conter erros de vocabulário, sintaxe e/ou gramática. A Microsoft não é responsável por qualquer inexatidão, erro ou dano causado por qualquer tradução imprecisa do conteúdo ou por seu uso pelos nossos clientes.

Clique aqui para ver a versão em Inglês deste artigo: 3179862
Sintomas
No SQL Server 2014 ou 2012, você cria uma publicação de mesclagem que contém uma tabela que tenha um tipo de dados geometry ou geography. Para copiar o índice espacial, você definiu opção deíndices espaciais cópia deste artigo como Truepara que a mesclagem replicará índices espaciais. No entanto, quando o instantâneo é executado, ele falhará. Se iniciar o Monitor de replicação e analisar a publicação e o publisher, localize o Snapshot agent e exibir os detalhes da execução do instantâneo, você verá a seguinte mensagem de erro:


Fonte: Microsoft.SqlServer.Smo
Site de destino: System.Collections.Generic.IEnumerable'1[System.String] ScriptWithList [] Microsoft.SqlServer.Management.Smo.SqlSmoObject, Boolean (Microsoft.SqlServer.Management.Smo.DependencyCollection)

Mensagem: O Script falhou para servidor 'CMSQL'.

Pilha: A Microsoft.SqlServer.Management.Smo.Scripter.ScriptWithList (DependencyCollection depList, SqlSmoObject [] objetos, Boolean discoveryRequired)

no Microsoft.SqlServer.Management.Smo.Scripter.EnumScriptWithList (SqlSmoObject [] objetos)

no Microsoft.SqlServer.Replication.Snapshot.SmoScriptingManager.ScriptIndexList (criador de scripts do criador de scripts, SqlSmoObject [] smoObjectList)

no Microsoft.SqlServer.Replication.Snapshot.MergeSmoScriptingManager.GenerateTableArticleDriScriptWithSingleBatchConstraints (criador de scripts do criador de scripts, BaseArticleWrapper articleWrapper, smoTable da tabela)

no Microsoft.SqlServer.Replication.Snapshot.MergeSmoScriptingManager.GenerateTableArticleScripts (ArticleScriptingBundle articleScriptingBundle)

no Microsoft.SqlServer.Replication.Snapshot.MergeSmoScriptingManager.GenerateArticleScripts (ArticleScriptingBundle articleScriptingBundle)

no Microsoft.SqlServer.Replication.Snapshot.SmoScriptingManager.GenerateObjectScripts (ArticleScriptingBundle articleScriptingBundle)

em Microsoft.SqlServer.Replication.Snapshot.SmoScriptingManager.DoScripting()

em Microsoft.SqlServer.Replication.Snapshot.SqlServerSnapshotProvider.DoScripting()

em Microsoft.SqlServer.Replication.Snapshot.MergeSnapshotProvider.DoScripting()

em Microsoft.SqlServer.Replication.Snapshot.SqlServerSnapshotProvider.GenerateSnapshot()

em Microsoft.SqlServer.Replication.SnapshotGenerationAgent.InternalRun()

no Microsoft.SqlServer.Replication.AgentCore.Run() (fonte: Microsoft.SqlServer.Smo, número do erro: 0)

Obter ajuda: http://help/0

Fonte: Microsoft.SqlServer.Smo

Site de destino: CheckTargetVersion Void (Microsoft.SqlServer.Management.Smo.SqlServerVersionInternal, Microsoft.SqlServer.Management.Smo.SqlServerVersionInternal, System. String)

Mensagem: Erro com índice espacial [IX_GeographicEntity_Outline]. GEOMETRY_AUTO_GRID e GEOGRAPHY_AUTO_GRID não são suportados no SQL Server 2008.

Pilha: A Microsoft.SqlServer.Management.Smo.SqlSmoObject.CheckTargetVersion (SqlServerVersionInternal targetVersion, SqlServerVersionInternal upperLimit, String exceptionText)

no Microsoft.SqlServer.Management.Smo.Index.SpatialIndexScripter.ScriptIndexDetails (sb StringBuilder)

em Microsoft.SqlServer.Management.Smo.Index.IndexScripter.GetCreateScript()

no Microsoft.SqlServer.Management.Smo.Index.ScriptDdl (StringCollection consultas, sp ScriptingPreferences, Boolean notEmbedded, Boolean createStatement)

no Microsoft.SqlServer.Management.Smo.Index.ScriptCreate (StringCollection consultas, sp ScriptingPreferences)

no Microsoft.SqlServer.Management.Smo.SqlSmoObject.ScriptCreateInternal (consulta StringCollection, sp ScriptingPreferences, Boolean skipPropagateScript)

no Microsoft.SqlServer.Management.Smo.ScriptMaker.ScriptCreateObject (urn Urn, sp de ScriptingPreferences, ObjectScriptingType & scriptType)

no Microsoft.SqlServer.Management.Smo.ScriptMaker.ScriptCreate (urn Urn, sp de ScriptingPreferences, ObjectScriptingType & scriptType)

no Microsoft.SqlServer.Management.Smo.ScriptMaker.ScriptCreateObjects (urns IEnumerable'1)

no Microsoft.SqlServer.Management.Smo.ScriptMaker.DiscoverOrderScript (urns IEnumerable'1)

no Microsoft.SqlServer.Management.Smo.ScriptMaker.ScriptWorker (urns lista ' 1, gravador de ISmoScriptWriter)

no Microsoft.SqlServer.Management.Smo.ScriptMaker.Script (DependencyCollection depList, SqlSmoObject [] objetos, gravador de ISmoScriptWriter)

no Microsoft.SqlServer.Management.Smo.Scripter.ScriptWithListWorker (DependencyCollection depList, SqlSmoObject [] objetos, Boolean discoveryRequired)

no Microsoft.SqlServer.Management.Smo.Scripter.ScriptWithList (DependencyCollection depList, SqlSmoObject [] objetos, Boolean discoveryRequired) (fonte: Microsoft.SqlServer.Smo, número do erro: 0)

Obter ajuda: http://help/0

Causa
SQL Server não oferece suporte a índices espaciais são definidos com as palavras-chave GEOMETRY_AUTO_GRID ou GEOGRAPHY_AUTO_GRID.

Quando você cria uma publicação no SQL Server 2012 ou 2014 do SQL Server, o nível de compatibilidade da publicação (@publication_compatibility_level) a configuração permite configurações 90RTM e 100RTM. Portanto, compatibilidade com o SQL Server 2008 é forçada quando você cria uma publicação de mesclagem. Mas devido a compatibilidade com o SQL Server 2008, índices espaciais não podem ser copiados.
Como Contornar
Para continuar a usar esse tipo de dados em uma publicação de mesclagem, use uma das seguintes soluções:
  • Defina o índice espacial usando as palavras-chave GEOMETRY_GRID ou GEOGRPAHY_GRID em vez de GEOMETRY_AUTO_GRID ou GEOGRAPHY_AUTO_GRID.
  • Quando você define a publicação, configure o artigo é definido com um índice espacial, definindo a opção Índices espaciais cópia como False. Em seguida, o após as assinaturas foram criadas e inicializados a inscrição, crie manualmente o índice espacial na tabela de inscrição.

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 3179862 - Última Revisão: 08/11/2016 18:31:00 - Revisão: 1.0

Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Enterprise Core, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Enterprise Core, Microsoft SQL Server 2014 Standard

  • kbmt KB3179862 KbMtpt
Comentários
cument.createElement('meta');m.name='ms.dqp0';m.content='true';document.getElementsByTagName('head')[0].appendChild(m);" onload="var m=document.createElement('meta');m.name='ms.dqp0';m.content='false';document.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?"> ;