Criando uma conexão ODBC - passo a passo
Introdução
Esse artigo tem a intenção de ser um simples tutorial sobre como criar conexões ODBC e trabalhar com elas, já que eu achei o assunto um pouco confuso quando estava começando, mas tive pessoas incríveis que pegaram minha mão e me guiaram para conseguir, e eu acredito que todos merecem esse tipo de ajuda também.
Vou dividir cada pequena parte em seções, então sinta-se à vontade para pular para a que sentir necessidade, apesar de eu recomendar ler o texto na íntegra.
Vou usar os dados de exemplo criados num artigo anterior, Tutorial - forma mais rápida de criar uma base de dados de exemplo: Samples.PersistentData, com as propriedades Name e Age.
Criando a conexão
- Abra a Fonte de Dados ODBC - procure por ODBC na barra de pesquisa do seu computador e vai encontrar facilmente.
- Selecione a aba DNS de sistema
- Clique em Adicionar
- Selecione o driver apropriado - para esse exemplo vou utilizar InterSystems IRIS ODBC35
- Escolha um nome para a conexão
- Digite o servidor, porta e namespace que quer conectar (ex.: IP 12.0.0.1, porta 1972 e namespace SAMPLE)
- Digite o Usuário e a Senha que vai usar para se conectar
Clique em "Testar conexão" para ver se tudo está funcionando corretamente - se não for bem sucedida, cheque novamente usuário, senha, servidor, porta e namespace, e também cheque se o IRIS está ligado (para esse exemplo), ou se precisa de uma VPN para esse conexão.
OBS.: Eu não sei dizer se esses passos são similares para Linux ou iOS, perdão!
Usando sua conexão numa Business Operation numa produção
Esse é apenas um exemplo de como pode colocar essa conexão em prática, mas é um muito utilizado.
Com um Business Operation com adaptador "EnsLib.SQL.OutboundAdapter" em uma produção, abra a aba de configurações e expanda a parte de Parâmetros Básicos.
Você verá um input de DSN como esse:
.png)
Expanda o input e ache a conexão que acabamos de criar. Se não estiver ali, garanta que a conexão foi criada na Fonte de Dados ODBC correta (32-bit ou 64-bit). Se não aparecer, simplesmente siga os passos novamente na outra opção e cheque o input de DSN outra vez.
Credenciais
O IRIS pode precisar de um usuário e senha para poder acessar essa conexão, então você deve fornecê-los.
Logo abaixo do input de DSN, você vai encontrar um input de Credenciais com uma lupa ao lado.
.png)
Clique na lupa e você vai se encontrar no menu de credenciais.
Na aba à sua direita, clique em "Novo", digite um ID que facilitará que você identifique a credencial, o usuário e a senha necessários e salve.
Muito bem! Agora que você tem as credenciais, pode voltar para a produção e selecioná-las pelo ID que escolheu.
PS.: um exemplo para você testar
Para esse simples tutorial, eu criei a seguinte classe num namespace diferente do que tem a tabela "Sample.PersistentData":
Class Sample.ODBC.Operation Extends Ens.BusinessOperation
{
Parameter ADAPTER = "EnsLib.SQL.OutboundAdapter";Property Adapter As EnsLib.SQL.OutboundAdapter;Parameter INVOCATION = "Queue";
Method LegalAge(Request As Sample.request, Response As Sample.response) As%Status
{
// instanciate the responseDo Request.NewResponse(.Response)
// Execute the query and select the first resultDo..Adapter.ExecuteQuery(.result, "SELECT Name, Age from Sample.PersistentData where Age > 20")
Do result.%Next()
// just for visualizing, sets the first result in the responseSet Response.result = result.%Get("Name")_" "_result.%Get("Age")
Quit1
}
XData MessageMap
{
<MapItems>
<MapItem MessageType="Sample.request">
<Method>LegalAge</Method>
</MapItem>
</MapItems>
}
}
Conclusão
Obrigada por ler e eu espero que tenha sido útil!
Sinta-se à vontade para me contatar sobre qualquer dúvida.