Sintomas
Considere o seguinte cenário:
-
Existe uma função SQLCLR que é declarada "determinística", e a função pode ser usada para a otimização "substituição com uma constante".
-
Existe um sinónimo que aponta para a função SQLCLR.
-
Uma função de valor de tabela (TVF) refere-se à função SQLCLR através do sinónimo.
Neste cenário, quando uma aplicação consulta esta TVF, pode ocorrer uma violação de acesso, e poderá receber uma mensagem de erro que se assemelha ao seguinte:
Mensagem 0, Nível 11, Estado 0, Fila 14
Ocorreu um erro grave no comando atual. Os resultados, se houver, devem ser descartados.
Além disso, uma mensagem de erro é registada no registo de erro do SQL Server.
Resolução
Informações de pacote de serviço para SQL Server
Este problema é corrigido no seguinte pacote de serviços para o SQL Server:
Os pacotes de serviço são cumulativos. Cada novo pacote de serviços contém todas as correções que se encontram em pacotes de serviços anteriores, juntamente com quaisquer novas correções. A nossa recomendação é aplicar o mais recente pacote de serviços e a mais recente atualização cumulativa para esse pacote de serviços. Não tem de instalar um pacote de serviços anterior antes de instalar o mais recente pacote de serviços. Utilize o Quadro 1 no seguinte artigo para encontrar mais informações sobre o mais recente pacote de serviços e a mais recente atualização cumulativa.
Como determinar o nível de versão, edição e atualização do SQL Server e dos seus componentes
Estado
A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".
Referências
Conheça a terminologiaque a Microsoft utiliza para descrever atualizações de software.