BUG SSMS 17.x – SQL Server 2019 x Invalid version 15

Hello guys,

Nesse post vou mostrar um BUG no SSMS 17.x (SQL Server Management Studio) que retorna a mensagem de erro abaixo:

Invalid version: 15. (Microsoft.SqlServer.Smo)


YouTube – Vídeo:

Segue abaixo um vídeo que gravei no YouTube mostrando na prática a execução dos scripts desse post:

https://www.youtube.com/watch?v=Sfg9MjO3c-s


SSMS 17.x – SQL Server 2019 x Invalid version: 15

Nosso amigo Alan Mairinck estava atendendo mais uma demanda aqui no #teampowertuning e se deparou com a mensagem de erro abaixo no SSMS:

Vamos simular o mesmo erro e vou explicar o que aconteceu.


Simulação Erro – Invalid version: 15

Vou utilizar as seguintes versões para o SSMS e SQL Server:

  • SSMS – Versão 17.9.1
  • SSMS – Versão 18.5
  • SQL Server:

Microsoft SQL Server 2019 (RTM) – 15.0.2000.5 (X64)  

Sep 24 2019 13:48:23   Copyright (C) 2019

Microsoft Corporation  Developer Edition (64-bit)

on Windows 10 Home 10.0 <X64> (Build 18362: )

Se você ainda não utilizou o SQL Server 2019, segue abaixo um link com uma palestra que fiz junto com o Fabricio Lima onde mostramos algumas novidades bem legais.

https://luizlima.net/retrospectiva-2019-e-sql-server-es-14-sql-server-2019-o-que-vem-por-ai/

Vou utilizar também uma outra instância com o SQL Server 2017.

Inicialmente, vou criar uma simples procedure de teste no SQL Server 2019.

Ela faz apenas um SELECT e retorna o número 1.

Até aqui tudo certo, agora vamos tentar modificar o código dessa procedure utilizando o SSMS 17.

Object Explorer -> Clicar com o botão direito em cima da procedure -> Modify

É nesse momento que a mensagem de erro aparece. =(

Invalid version: 15. (Microsoft.SqlServer.Smo)

Putz! Vamos tentar uma outra forma então para gerar o script de CREATE dessa procedure.

Object Explorer -> Clicar com o botão direito em cima da procedure -> Script Stored Procedure as -> CREATE To -> New Query Editor Window

Erro novamente! Pô, o SSMS está de brincadeira comigo, só pode!!!

Como sempre, nosso amigo Stack Overflow nos ajudou mais uma vez! Foi aí que descobrimos que isso é um BUG das versões mais antigas do SSMS.

Referência: https://stackoverflow.com/questions/57262748/sql-server-invalid-version-15-microsoft-sqlserver-smo

Por isso também é importante manter o SSMS atualizado, além do próprio SQL Server é claro.

https://luizlima.net/dicas-ssms-versions-and-check-for-updates/

Uma alternativa nesse caso para conseguir visualizar o código da procedure seria você executar o código abaixo:

Com isso, basta copiar o código e colar em uma nova query.

Por fim, repeti o mesmo procedimento com o SSMS 17, mas dessa vez na instância do SQL Server 2017 e não gerou nenhum erro. Com o SSMS 18 também funcionou normalmente nas duas instâncias.

Ou seja, o problema está nas versões anteriores ao SSMS 18 usando o SQL Server 2019. =(

Portanto, se for utilizar o SQL Server 2019, o mais recomendado é utilizar o SSMS 18 em diante. =)


UPDATE – 11/06/2020

Na documentação oficial do SQL Server 2019, a Microsoft informa também que você pode ter alguns problemas na instalação do SQL Server se as versões do SSMS 18.0, 18.1, 18.2, ou 18.3 estiverem instaladas.

OBS: Obrigado pelo comentário José Diz.

https://docs.microsoft.com/en-us/sql/sql-server/sql-server-version-15-release-notes?view=sql-server-ver15


Espero que tenha gostado e que isso também possa ser útil no seu dia a dia. Até o próximo post!

Me siga no LinkedIn e YouTube para ficar por dentro das novidades.

Abraço,

Luiz Vitor França Lima

Consultor SQL Server

Deixe uma resposta