Artigo SQL Magazine 18 - Variáveis Bind – Uma visão prática

Editorial da Revista SQL Magazine - Edição 18.

O uso de instruções SQL pela maioria das linguagens de programação e sistemas gerenciadores de banco de dados pode ser parametrizado de forma eficiente e segura, através das bind variables, ou variáveis de ligação, podendo ser utilizadas nos comandos SELECT, UPDATE, DELETE e INSERT. Variáveis de ligação funcionam como parâmetros em instruções SQL possibilitando a atribuição de valores dinâmicos. Na execução de instruções SQL é comum usar parâmetros para selecionar ou atualizar dados através das cláusulas where, values ou set.

Há uma semelhança muito grande de uma mesma instrução SQL elaborada com variáveis de ligação ou valores fixos ambos usados como parâmetros. Mas a semelhança é só na escrita dos comandos ou instruções SQL. Na verdade a diferença existe na execução destes comandos no servidor de banco de dados.

Quando uma instrução SQL é elaborada com variável de ligação ocorre apenas a leitura e substituição do valor atribuído à variável de ligação, e caso a instrução SQL já esteja na memória do servidor de banco de dados ocorre o retorno ou atualização dos dados, sem ter que passar pelas etapas de preparação e execução da instrução, ou seja, com o uso de variáveis de ligação é permitido o reuso de instruções SQL já armazenadas em memória. Se uma instrução SQL for executada através de parâmetros com valores fixos ou strings concatenadas através de alguma linguagem de programação, o servidor de banco de dados irá sempre refazer e executar sempre uma nova instrução SQL.

É bom lembrar que parâmetros usados em instruções SQL podem ser valores fixos, variáveis concatenadas através de alguma linguagem de programação e também variáveis de ligação.

É possível definir variável de ligação de diversas maneiras. Serve de ponte para a execução de uma instrução SQL já preparada na memória do servidor, onde são enviados apenas os valores nela contidos.

O uso dessas variáveis no desenvolvimento de sistemas de informação permite maior segurança e eficiência na manipulação de dados, sendo suportadas pela maioria das linguagens de programação, entre elas o Visual Basic, C++ Builder e Java. Alguns sistemas gerenciadores de banco de dados também permitem o uso de variáveis de ligação na construção de funções e procedimentos armazenados (stores procedures), como por exemplo, o Oracle.

O foco deste artigo é conceituar e exemplificar o uso de variáveis de ligação utilizando o SGBD Oracle através de sua linguagem PL/SQL, e também através da linguagem Java.

Para os exemplos apresentados nesse artigo, utilizaremos o modelo de dados apresentado na figura 1.

Figura 1" [...] continue lendo...
Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados