Este erro ocorre quando você tenta modificar dados em uma tabela com uma chave estrangeira que faz referência a uma coluna que não existe mais na tabela referenciada. O simples ato de renomear uma coluna não causará esse erro. Em circunstâncias normais, uma coluna referenciada por uma chave estrangeira não pode ser removida; portanto, esse erro pode indicar que ocorreram atualizações diretas nas tabelas do sistema para as quais não há suporte.
Este erro ocorre quando você tenta modificar dados em uma tabela com uma chave estrangeira que faz referência a uma coluna que não existe mais na tabela referenciada. O simples ato de renomear uma coluna não causará esse erro. Em circunstâncias normais, uma coluna referenciada por uma chave estrangeira não pode ser removida; portanto, esse erro pode indicar que ocorreram atualizações diretas nas tabelas do sistema para as quais não há suporte.
Se você vir o erro pela primeira vez somente após reiniciar a instância do SQL Server, isso pode indicar que referências anteriores a uma chave estrangeira estavam usando informações armazenadas em cache sobre a coluna removida. Portanto, a coluna pode ter sido removida a qualquer momento desde a última reinicialização da instância do SQL Server.
Siga estas etapas:
Execute o DBCC CHECKDB para o banco de dados onde as tabelas residem para verificar se não há problemas de consistência no banco de dados.
Remova a restrição de chave estrangeira existente e, se necessário, crie uma nova, que faça referência a uma coluna válida.
Verifique se a opção permitir atualizações está desativada. Para obter instruções sobre como configurar essa opção, consulte o tópico nos Manuais Online sobre a opção "Permitir Atualizações".
Nome | Descrição | Valor Padrão |
Habilitado | Habilita ou desabilita o fluxo de trabalho. | Sim |
Intervalo (segundos) | O intervalo de tempo recorrente em segundos no qual executar o fluxo de trabalho. | 300 |
Prioridade | Define a Prioridade do Alerta. | 1 |
Gravidade | Define a Severidade do Alerta. | 1 |
Tempo de Sincronização | Tempo de Sincronização |
|
Tempo Limite (em segundos) | Especifica o tempo que o fluxo de trabalho pode para ser executado antes de ser fechado e marcado como falha. | 200 |
Tempo limite da conexão de banco de dados (segundos) | O fluxo de trabalho falhará e registrará um evento, se ele não conseguir acessar o banco de dados durante o período especificado. | 15 |
Target | Microsoft.SQLServer.Linux.DBEngine | ||
Category | EventCollection | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Comment | Mom2017ID='{2253943F-2EDA-43EC-AA01-640E5430061F}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74} |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ | DataSource | Microsoft.SQLServer.Linux.DataSource.EventCollectionFiltered | Default |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SQLServer.Linux.EventRule.DBEngine.Could_not_resolve_the_referenced_column_name_in_table_1_5_Rule" Target="SqlDiscL!Microsoft.SQLServer.Linux.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2017ID='{2253943F-2EDA-43EC-AA01-640E5430061F}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Microsoft.SQLServer.Linux.DataSource.EventCollectionFiltered">
<MachineName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<InstanceName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>200</TimeoutSeconds>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<EventDisplayNumber>437</EventDisplayNumber>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.Linux.EventRule.DBEngine.Could_not_resolve_the_referenced_column_name_in_table_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/Property[@Name='EventID']$. $Data/Property[@Name='Message']$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>