【发布时间】:2017-10-27 15:15:03
【问题描述】:
我有没有错误的代码。我的问题更多是想学习可以包含多个参数的 With/End With 语句的语法。现在,一个新的 ADODB.Command 已设置并在带有 ActiveConnection 的 With/End 内,包括 commandType 和 CommandText。然后在 With 5 参数之外创建、附加和分配。
我想知道这些参数是否也可以在 ADODB.Command 的 With/End With 内。
这是我的代码:
Set ADOQD = New ADODB.Command
With ADOQD
.ActiveConnection = ADOCon
.CommandType = adCmdStoredProc
.CommandText = "jsp_AddFeedback"
End With
Set pArrangementID = CreateParameter("@ArrangementID", adVarChar, adParamInput, 15)
ADOQD.Parameters.Append pArrangementID
pArrangementID = Forms("MTDDataCheck").ArrangementID.Value
Set pEditor = ADOQD.CreateParameter("@Editor", adVarWChar, adParamInput, 20)
ADOQD.Parameters.Append pEditor
pEditor = gstrLastEditor
Set pProofer = ADOQD.CreateParameter("@Proofer", adVarWChar, adParamInput, 20)
ADOQD.Parameters.Append pProofer
pProofer = gstrLastProofer
Set pControlName = ADOQD.CreateParameter("@ControlName", adVarWChar, adParamInput, 255)
ADOQD.Parameters.Append pControlName
pControlName = lbl.name
Set pComment = ADOQD.CreateParameter("@Comment", adLongVarWChar, adParamInput, -1)
ADOQD.Parameters.Append pComment
pComment = reply
这是我的尝试:
Set ADOQD = New ADODB.Command
With ADOQD
.ActiveConnection = ADOCon
.CommandType = adCmdStoredProc
.CommandText = "jsp_DeleteFeedback"
Set pArrangementID = .CreateParameter("@ArrangementID", adVarChar, adParamInput, 15)
.Parameters.Append pArrangementID
pArrangementID = Forms("MTDDataCheck").ArrangementID.Value
Set pControlName = .CreateParameter("@ControlName", adVarWChar, adParamInput, 255)
.Parameters.Append pControlName
pControlName = lbl.name
.Execute
End With
这是正确的方法吗?任何例子都非常感谢。
谢谢。
得到响应后的代码:
Set ADOQD = New ADODB.Command
With ADOQD
Set .ActiveConnection = ADOCon
.CommandType = adCmdStoredProc
.CommandText = "jsp_AddFeedback"
.Parameters.Append .CreateParameter("@ArrangementID", adVarChar, adParamInput, 15, Forms("MTDDataCheck").ArrangementID.Value)
.Parameters.Append .CreateParameter("@Editor", adVarWChar, adParamInput, 20, gstrLastEditor)
.Parameters.Append .CreateParameter("@Proofer", adVarWChar, adParamInput, 20, gstrLastProofer)
.Parameters.Append .CreateParameter("@ControlName", adVarWChar, adParamInput, 255, lbl.name)
.Parameters.Append .CreateParameter("@Comment", adLongVarWChar, adParamInput, -1, reply)
.Execute
End With
【问题讨论】:
标签: vba ms-access-2013 with-statement