Bạn đang làm việc đó, chỉ cần kết hợp cả hai.
Set cmd = CreateObject("ADODB.Command")
with cmd
.ActiveConnection = cnnstr
.CommandType = adCmdStoredProc
.CommandText = "CheckEmployeeId"
.Parameters.Refresh
.Parameters("@EmployeeName") = EmployeeName
Set rst = .Execute()
end with
'You will need to close the Recordset before returning the RETURN_VALUE.
RetVal = cmd.Parameters("@RETURN_VALUE")
Bạn không cần phải chọn cái này hay cái kia mà chúng độc lập với nhau. Vấn đề duy nhất sẽ là thứ tự mà chúng trả về, hãy nhớ rằng cả OUTPUT
và RETURN
các giá trị sẽ không thể truy cập được cho đến khi tất cả các Tập bản ghi được trả lại bị đóng.
Cá nhân tôi muốn đóng chúng ngay lập tức bằng cách lưu trữ chúng dưới dạng 2 Mảng chiều.
Set cmd = CreateObject("ADODB.Command")
with cmd
.ActiveConnection = cnnstr
.CommandType = adCmdStoredProc
.CommandText = "CheckEmployeeId"
.Parameters.Refresh
.Parameters("@EmployeeName") = EmployeeName
Set rst = .Execute()
If Not rst.EOF Then data = rst.GetRows()
Call rst.Close()
end with
RetVal = cmd.Parameters("@RETURN_VALUE")
'Access Recordset array
If IsArray(data) Then
'Return first column, first row.
Response.Write data(0, 0)
End If