搭配預存程序使用陳述式
預存程序是資料庫程序,類似其他程式設計語言中的程序,包含在資料庫本身以內。 在 SQL Server 中,您可以使用 Transact-SQL 或使用 common language runtime (CLR) 和其中一種 Visual Studio 程式設計語言 (如 Visual Basic 或 C#) 來建立預存程序。 一般而言,SQL Server 預存程序可執行下列動作:
接受輸入參數,並以輸出參數的形式將多個數值傳回呼叫程序或批次處理。
包含可在資料庫中執行作業的程式陳述式,包括呼叫其他程序。
將狀態值傳回呼叫程序或批次處理,以指示成功或失敗 (及失敗原因)。
注意
如需 SQL Server 預存程序的詳細資訊,請參閱《SQL Server 線上叢書》中的<了解預存程序>。
如需利用預存程序來使用 SQL Server 資料庫中的資料,則 Microsoft JDBC Driver for SQL Server 提供 SQLServerStatement、SQLServerPreparedStatement 和 SQLServerCallableStatement 類別。 要使用哪一個類別視預存程序是否需要 IN (輸入) 或 OUT (輸出) 參數而定。 如果預存程序不需要 IN 或 OUT 參數,您可以使用 SQLServerStatement 類別;如果會多次呼叫預存程序,或只需要 IN 參數,則您可以使用 SQLServerPreparedStatement 類別。 如果預存程序需要 IN 與 OUT 參數,您應該使用 SQLServerCallableStatement 類別。 只有在預存程序需要 OUT 參數時,您才需要額外使用 SQLServerCallableStatement 類別。
注意
預存程序也可以傳回更新計數和多個結果集。 如需詳細資訊,請參閱搭配更新計數使用預存程序與使用多個結果集。
當使用 JDBC 驅動程式呼叫具有參數的預存程序時,您必須使用 call
SQL 逸出序列與 SQLServerConnection 類別的 prepareCall 方法搭配。 call
逸出序列的完整語法如下:
{[?=]call procedure-name[([parameter][,[parameter]]...)]}
注意
如需 call
與其他 SQL 逸出序列的詳細資訊,請參閱使用 SQL 逸出序列。
本節中主題描述您可以使用 JDBC 驅動程式和 call
SQL 逸出序列來呼叫 SQL Server 預存程序的方式。
本節內容
主題 | 描述 |
---|---|
使用不含參數的預存程序 | 描述如何使用 JDBC 驅動程式來執行不包含輸入或輸出參數的預存程序。 |
使用含輸入參數的預存程序 | 描述如何使用 JDBC 驅動程式來執行包含輸入參數的預存程序。 |
使用含輸出參數的預存程序 | 描述如何使用 JDBC 驅動程式來執行包含輸出參數的預存程序。 |
使用含傳回狀態的預存程序 | 描述如何使用 JDBC 驅動程式來執行包含傳回狀態值的預存程序。 |
使用含更新計數的預存程序 | 描述如何使用 JDBC 驅動程式來執行傳回更新計數的預存程序。 |