Theo trang này
, loại thông số adVariant
(tức là 12) không được ADO hỗ trợ.
Bạn nên sử dụng các hằng số để làm cho mã của bạn dễ đọc hơn, ví dụ:
Const adUseClient = 3
Const adOpenStatic = 3
Const adCmdText = 1
Const adCmdStoredProc = 4
Const adVarChar = 200
Const adNumeric = 131
Const adChar = 129
Const adBigInt = 20
Const adInteger = 3
Const adParamInput = 1
Const adParamOutput = 2
Const adParamInputOutput = 3
Const adParamReturnValue = 4
cmd.Parameters.Append cmd.CreateParameter("theAccountId", adVarChar, adParamInput, , Request.Form ("aid"))
cmd.Parameters.Append cmd.CreateParameter("theAwardId", adNumeric, adParamInput, , award_id)
cmd.Parameters.Append cmd.CreateParameter("theDueDate", adVarChar, adParamInput, 100, theDueDt)
cmd.Parameters.Append cmd.CreateParameter("theSubmittedDate", adVarChar, adParamInput, 100, theSubmittedDt)
cmd.Parameters.Append cmd.CreateParameter("theReportDescription", adVarChar, adParamInput, 100, theReportDesc)
cmd.Parameters.Append cmd.CreateParameter("theFormId", adVarChar, adParamInput, 100, theFrmId)
cmd.Parameters.Append cmd.CreateParameter("theReturnCode", adNumeric, adParamOutput)
Có thể thử cái này:
cmd.CommandType = adCmdText
cmd.CommandText = "{CALL deadlines_summary.PR_SUMMARY_IN(?,?,?,?,?,?,?)}"
Các tham số dạng số không yêu cầu giá trị kích thước.
Bạn cũng nên thử sử dụng loại thông số adDate
thay vì chuyển đổi ngày tháng thành giá trị chuỗi.
Bạn phải xóa dấu ngoặc kép khi sử dụng tham số ràng buộc, tức là chỉ cần sử dụng theSubmittedDt = submitted_date
thay vì theSubmittedDt = "'" & submitted_date & "'"
.