Appel d’une procédure stockée en tant que méthode sur un objet Connection
Vous pouvez appeler une procédure stockée comme s’il s’agissait d’une méthode native sur l’objet Connection ouvert associé. Cela est similaire à l’appel d’une commande nommée sur l’objet Connection.
L’exemple de code Visual Basic suivant appelle une procédure stockée dans l’exemple de base de données Northwind, appelée CustOrdersOrdersOrders, qui est répertoriée ici à nouveau pour votre commodité.
CREATE PROCEDURE CustOrdersOrders @CustomerID nchar(5) AS
SELECT OrderID, OrderDate, RequiredDate, ShippedDate
FROM Orders
WHERE CustomerID = @CustomerID
ORDER BY OrderID
L’exemple de code suivant montre comment appeler une procédure stockée comme s’il s’agissait d’une méthode native sur un objet Connection ouvert associé.
Const DS = "MySQLServer"
Const DB = "Northwind"
Const DP = "SQLOLEDB"
Dim objConn As New ADODB.Connection
Dim objRs As New ADODB.Recordset
Dim objComm As New ADODB.Command
ConnectionString = "Provider=" & DP & _
";Data Source=" & DS & _
";Initial Catalog=" & DB & _
";Integrated Security=SSPI;"
' Connect to the data source.
objConn.Open ConnectionString
' Set a stored procedure
Set objComm.ActiveConnection = objConn
' Execute the stored procedure on
' the active connection object...
' "ALFKI" is the required input parameter,
' objRs is the resultant output variable.
objComm(1) = "ALFKI"
Set objRs = objComm.Execute
' Display the result.
Debug.Print "Results returned from sp_CustOrdersOrders for ALFKI: "
Do While Not objRs.EOF
Debug.Print vbTab & objRs(0) & vbTab & objRs(1) & vbTab & _
objRs(2) & vbTab & objRs(3)
objRs.MoveNext
Loop
'Clean up.
objRs.Close
objConn.Close
Set objRs = Nothing
Set objConn = Nothing
Set objComm = Nothing