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