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


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

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

Простейший вид хранимой процедуры SQL Server, которую можно вызвать, не содержит никаких параметров и возвращает один результирующий набор. Microsoft JDBC Driver для SQL Server предоставляет класс SQLServerStatement, который можно использовать для вызова хранимой процедуры такого типа и обработки возвращаемых ею данных.

При использовании драйвера JDBC для вызова хранимых процедур без параметров необходимо использовать escape-последовательность SQL call. Синтаксис escape-последовательности call без параметров:

{call procedure-name}

Примечание.

Дополнительные сведения об использовании escape-последовательностей в SQL см. в этой статье.

Например, создайте следующую хранимую процедуру в примере базы данных AdventureWorks2022:

CREATE PROCEDURE GetContactFormalNames
AS  
BEGIN  
   SELECT TOP 10 Title + ' ' + FirstName + ' ' + LastName AS FormalName
   FROM Person.Contact  
END  

Эта хранимая процедура возвращает один результирующий набор, который содержит один столбец данных, представляющий собой сочетание названия, имени, фамилии 10 основных контактов, которые хранятся в таблице Person.Contact.

В следующем примере открытое подключение к образцу базы данных AdventureWorks2022 передается в функцию, а метод executeQuery используется для вызова хранимой процедуры GetContactFormalNames.

public static void executeSprocNoParams(Connection con) throws SQLException {  
    try(Statement stmt = con.createStatement();) {  

        ResultSet rs = stmt.executeQuery("{call dbo.GetContactFormalNames}");  
        while (rs.next()) {  
            System.out.println(rs.getString("FormalName"));  
        }  
    }  
}

См. также

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