執行語句時,在資料源上呼叫預存程式(而不是直接在用戶端應用程式中執行或準備語句)可以提供:
更高的效能。
降低網路負荷。
更好的一致性。
更好的精確度。
已新增功能。
SQL Server Native Client OLE DB 提供者支援 SQL Server 預存程序用來傳回數據的三種機制:
程式中的每個SELECT語句都會產生結果集。
此程式可以透過輸出參數傳回數據。
此程式可以有整數傳回碼。
應用程式必須能夠處理預存程式的所有輸出。
不同的 OLE DB 提供者會在結果處理期間,在不同的時間傳回輸出參數和傳回值。 如果是 SQL Server Native Client OLE DB 提供者,在取用者擷取或取消預存程式傳回的結果集之後,才會提供輸出參數和傳回碼。 傳回碼和輸出參數會在伺服器的最後一個 TDS 封包中傳回。
提供者會在傳回輸出參數和傳回值時,使用 DBPROP_OUTPUTPARAMETERAVAILABILITY 屬性來報告。 此屬性位於DBPROPSET_DATASOURCEINFO屬性集中。
SQL Server Native Client OLE DB 提供者會將 DBPROP_OUTPUTPARAMETERAVAILABILITY 屬性設定為 DBPROPVAL_OA_ATROWRELEASE,表示在處理或釋放結果集之前,不會傳回傳回碼和輸出參數。