Поделиться через


Использование инструкции SQL с параметрами

Скачать драйвер JDBC

Для работы с данными в базе данных SQL Server с помощью инструкции SQL, содержащей параметры IN, можно использовать метод executeQuery класса SQLServerPreparedStatement . Этот класс возвращает SQLServerResultSet , содержащий запрошенные данные. Сначала создайте объект SQLServerPreparedStatement с помощью метода prepareStatement класса SQLServerConnection .

При создании инструкции SQL параметры IN задаются с помощью ? символа (вопросительного знака), который выступает в качестве заполнителя для значений параметров, передаваемых в инструкцию SQL. Чтобы указать значение параметра, используйте один из методов задания класса SQLServerPreparedStatement. Тип данных значения, передаваемого в инструкцию SQL, определяет используемый метод установки.

Во время передачи значения методу задания следует указать не только фактическое значение, которое будет использоваться в инструкции SQL, но также порядковый номер параметра в инструкции SQL. Например, если инструкция SQL содержит один параметр, его порядковое значение равно 1. Если оператор содержит два параметра, первое порядковое значение равно 1, а второй порядковый номер равен 2.

В следующем примере открытое подключение к примеру базы данных AdventureWorks2025 передается в функцию. Затем подготовленная инструкция SQL создается и выполняется с одним значением параметра String. Затем результаты считываются из набора результатов.

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();
    }
}

См. также

Использование инструкций SQLпроизводительность параметров подготовленных инструкций