Compartilhar via


Interfaces de nível de chamada

A técnica final para enviar instruções SQL para o DBMS é por meio de uma interface em nível de chamada (CLI). Uma interface em nível de chamada fornece uma biblioteca de funções do DBMS que podem ser chamadas pelo programa aplicativo. Assim, em vez de tentar misturar o SQL com outra linguagem de programação, uma interface em nível de chamada é semelhante às bibliotecas de rotina que a maioria dos programadores está acostumada a usar, como as bibliotecas de cadeia de caracteres, E/S ou matemática em C. Observe que os DBMSs que suportam SQL incorporado já têm uma interface em nível de chamada, cujas chamadas são geradas pelo pré-compilador. No entanto, essas chamadas não estão documentadas e estão sujeitas a alterações sem aviso prévio.

As interfaces de nível de chamada são comumente usadas em arquiteturas cliente/servidor, nas quais o programa aplicativo (o cliente) reside em um computador e o DBMS (o servidor) reside em um computador diferente. O aplicativo chama as funções da CLI no sistema local, e essas chamadas são enviadas pela rede para o DBMS para processamento.

Uma interface em nível de chamada é semelhante ao SQL dinâmico, pois as instruções SQL são transmitidas ao DBMS para processamento em tempo de execução, mas é diferente do SQL incorporado como um todo, pois não há instruções SQL incorporadas e não é necessário um pré-compilador.

O uso de uma interface em nível de chamada geralmente envolve as seguintes etapas:

  1. O aplicativo chama uma função CLI para se conectar ao DBMS.

  2. O aplicativo cria uma instrução SQL e a coloca em um buffer. Em seguida, ele chama uma ou mais funções da CLI para enviar a instrução ao DBMS para preparação e execução.

  3. Se a instrução for uma instrução SELECT, o aplicativo chamará uma função da CLI para retornar os resultados nos buffers do aplicativo. Normalmente, essa função retorna uma linha ou uma coluna de dados por vez.

  4. O aplicativo chama uma função CLI para se desconectar do DBMS.