A criação de uma consulta parametrizada em SQL permite especificar critérios dinamicamente ao executar uma consulta. Aqui estão as etapas para criar uma consulta de parâmetro:
#### Abra o Editor SQL:
Abra seu editor SQL ou ferramenta de gerenciamento de banco de dados.
#### Crie uma consulta de seleção básica:
Comece escrevendo uma consulta SELECT básica que recupera as colunas desejadas de uma tabela. Por exemplo:
```
SELECIONE *
DE clientes
```
#### Adicionar parâmetro:
Na cláusula WHERE, adicione um espaço reservado de parâmetro usando um ponto de interrogação (?) para representar os critérios dinâmicos. Por exemplo:
```
SELECIONE *
DE clientes
ONDE cidade =?
```
O ponto de interrogação (?) na consulta atua como um espaço reservado para o valor do parâmetro que será fornecido ao executar a consulta.
#### Prepare a declaração:
Use o método apropriado fornecido pelo seu sistema de banco de dados para preparar a instrução SQL para execução. Esta etapa varia de acordo com o banco de dados e a linguagem de programação que você está usando.
#### Vincule o valor do parâmetro:
Vincule o valor do parâmetro à instrução preparada. O processo de vinculação associa um valor específico ao espaço reservado do parâmetro (?).
#### Execute a consulta:
Execute a instrução preparada, fornecendo o valor real do parâmetro.
#### Exemplo:
Vamos considerar um exemplo simples no MySQL. Suponha que queiramos encontrar clientes de uma cidade específica usando uma consulta parametrizada. Veja como você criaria e executaria a consulta:
```
//Abre conexão com banco de dados MySQL
//Executa a consulta
```
```sql
// Cria uma consulta parametrizada
SELECIONE *
DE clientes
ONDE cidade =?;
```
```
// Prepara a declaração
Instrução PreparedStatement =connection.prepareStatement(sql);
// Vincula o valor do parâmetro
declaração.setString(1, "Nova York");
//Executa a consulta
ResultSet resultSet =instrução.executeQuery();
// Processa o conjunto de resultados
enquanto (resultSet.next()) {
// Recupera os valores da coluna
String nome =resultSet.getString("nome");
String cidade =resultSet.getString("cidade");
//Imprime o resultado
System.out.println("Cliente:" + nome + ", Cidade:" + cidade);
}
```
Neste exemplo, vinculamos o valor real "New York" ao espaço reservado do parâmetro (?) usando setString(1, "New York"). Quando a consulta for executada, ela recuperará os clientes do banco de dados onde a coluna da cidade corresponde ao valor do parâmetro especificado.
As consultas de parâmetros são úteis para criar consultas SQL dinâmicas e flexíveis que podem ser facilmente modificadas alterando os valores dos parâmetros sem modificar a própria instrução SQL subjacente.