Tipos de dados e campos
Como usar BindStatement ?
ADSRT.FAQ-3236
O BindStatement é uma classe que encapsula um PreparedStatement com a possibilidade de usar parâmetros com nomes no lugar de parâmetros posicionais.
Isso significa que no SQL, ao invés de incluir caractéres ? para representar os parâmetros, pode-se incluir parâmetros nomeados no formato :NOME.
Exemplo:
String sql = "select * from tabela where col = :VALOR";
BindStatement bs = new BindStatement(ctx.getConnection(), sql);
bs.set("VALOR", valor);
ResultSet rs = bs.executeQuery();
while (rs.next()) {
...
}
rs.close();
bs.close();
Note que seu uso é praticamente igual ao de uma PreparedStatement.
Observações:
- O método set(x,y) recebe o nome do parâmetro ao invés do índice
- O método set(x,y) irá usar o tipo de objeto informado para y, ou seja, fará o equivalente a setString, setLong, setDate, etc.
- Um mesmo parâmetro pode aparecer mais do que uma vez no SQL. Neste caso, o set(x,y) abastecerá internamente o valor de todas as ocorrências.
- Os nomes dos parâmetros não são sensíveis ao caso, ou seja, :NOME é o mesmo que :Nome e :nome.
- Veja a documentação da API para maiores detalhes.