SQL Server 2016 – Como consultar informações de um CEP utilizando a API Bemean e a função JSON_VALUE

SQL Server 2016 – Como consultar informações de um CEP utilizando a API Bemean e a função JSON_VALUE
5 (100%) 1 voto

Olá pessoal!
Tudo bem com vocês ?

Neste post rápido, vou demonstrar mais uma vez o uso de procedures OLE Automation e CLR para consumir informações na Web e trazer para o nosso banco SQL Server, de forma que possamos trabalhar com essa informação conforme nossa necessidade. Desta vez, vou mostrar como consultar as informações de cidade, estado, bairro e logradouro a partir de um cep informado, o que é muito utilizado atualmente.

Como o retorno da API contém dados no formato JSON, vou utilizar a função JSON_VALUE do SQL Server 2016. Caso você queira saber muito mais sobre tratamento de strings e arquivos JSON no SQL Server 2016, acesse o meu post SQL Server 2016 – Utilizando o suporte nativo a JSON (JSON_VALUE, JSON_QUERY, OPENJSON, FOR JSON, ISJSON, JSON_MODIFY).

Esse artigo é um complemento do meu post Como consultar informações de um CEP no SQL Server, onde demonstrei como consultar dados de um CEP utilizando a API do Viacep.com.br e que retornava os dados no formato XML. Resolvi fazer um novo post demonstrando como fazer isso utilizando uma outra API e tratando os dados no formato JSON.

Consultando os dados do CEP

Para realizar essa operação, vou utilizar o ótimo serviço da página CEP Bemean para consultar as informações de CEP.

Para realizar as requisições Web pelo SQL Server, você pode utilizar a solução utilizando OLE Automation, que vou demonstrar abaixo ou utilizando a Stored Procedure stpWs_Requisicao (minha forma preferida), do SQL CLR (C#), que eu demonstrei no post Realizando requisições POST e GET utilizando CLR (C#) no SQL Server.

Consultando as informações do CEP utilizando OLE Automation

Agora vou demonstrar como realizar essa consulta utilizando OLE Automation. A rotina está preparada para ativar o recurso na instância, caso não esteja ativado e desativar novamente ao final da execução.

Visualizar código-fonte:

Exemplo de uso:

Resultado:

Consultando as informações do CEP utilizando o CLR

Agora vou demonstrar como realizar essa consulta utilizando o CLR (C#), que na minha visão, é a melhor solução, embora seja mais complexa para implementar e exija conhecimentos em uma linguagem de programação (C# ou VB).

Caso você não saiba o que é o CLR e gostaria de aprender mais sobre esse fantástico recurso que pode ser utilizado no SQL Server, veja o post Introdução ao SQL CLR (Common Language Runtime) no SQL Server. O código-fonte da procedure do CLR stpWs_Requisicao está disponível no post Realizando requisições POST e GET utilizando CLR (C#) no SQL Server.

Visualizar código-fonte:

Exemplo de uso:

Resultado:

É isso aí, pessoal!
Espero que tenham gostado desse post.

Abraço e até a próxima.

SQL, sql server, sql server 2008, sql server 2008 R2, Oracle, Oracle Database, Oracle 11g, Oracle 10g, Oracle 12c, MySQL, Firebird, Consultoria, Consultor, Programador, Programação. Desenvolvedor, Analista de Sistemas, DBA, Criação de website, Criação de Sistema Web, Vitória, Vila Velha, Guarapari, Espírito Santo, ES, Consultoria SQL em VItória, Treinamento, Curso, Prestação de serviço, prestar serviço, freelancer, freela, banco de dados, consultoria em banco de dados, consultor de banco de dados

Deixe uma resposta