Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Para trabalhar com dados numa base de dados SQL Server usando uma instrução SQL que contenha parâmetros IN, pode usar o método executeQuery da classe SQLServerPreparedStatement . Esta classe devolve um SQLServerResultSet que contém os dados solicitados. Primeiro, crie um objeto SQLServerPreparedStatement usando o método prepareStatement da classe SQLServerConnection .
Quando constróis a tua instrução SQL, os parâmetros IN são especificados usando o ? carácter (ponto de interrogação), que funciona como marcador para os valores dos parâmetros que são passados na instrução SQL. Para especificar um valor para um parâmetro, use um dos métodos setter da classe SQLServerPreparedStatement. O tipo de dado do valor que passa para a instrução SQL determina o método setter que utiliza.
Quando passa um valor ao método setter, deve especificar não só o valor real a ser usado na instrução SQL, mas também a colocação ordinal do parâmetro na instrução SQL. Por exemplo, se a sua instrução SQL contiver um único parâmetro, o seu valor ordinal é 1. Se a afirmação contiver dois parâmetros, o primeiro valor ordinal é 1, enquanto o segundo valor ordinal é 2.
No exemplo seguinte, uma ligação aberta à base de dados de exemplo AdventureWorks2025 é passada para a função. Depois, é construída uma instrução SQL preparada e executada com um único valor de parâmetro String. Depois, os resultados são lidos do conjunto de resultados.
public static void executeStatement(Connection con) {
try(PreparedStatement pstmt = con.prepareStatement("SELECT LastName, FirstName FROM Person.Contact WHERE LastName = ?");) {
pstmt.setString(1, "Smith");
ResultSet rs = pstmt.executeQuery();
while (rs.next()) {
System.out.println(rs.getString("LastName") + ", " + rs.getString("FirstName"));
}
}
// Handle any errors that may have occurred.
catch (SQLException e) {
e.printStackTrace();
}
}
Consulte também
Utilização de instruções com SQLdesempenho dos parâmetros de instruções preparadas em SQL