VBA参数对象定义不正确。提供的信息不一致或不完整
我有一个问题作为话题。在附加参数行上运行错误3708和我的代码中断。我哪里出错了?oracle中的表只有这4列VBA参数对象定义不正确。提供的信息不一致或不完整,vba,parameters,adodb,Vba,Parameters,Adodb,我有一个问题作为话题。在附加参数行上运行错误3708和我的代码中断。我哪里出错了?oracle中的表只有这4列 Sub Export(path As String) ... Set insertCmnd = New ADODB.Command With insertCmnd .ActiveConnection = cn .CommandType = adCmdText .Comma
Sub Export(path As String)
...
Set insertCmnd = New ADODB.Command
With insertCmnd
.ActiveConnection = cn
.CommandType = adCmdText
.CommandText = "INSERT INTO DEVCRM.COK_WE_REZYGNACJA_KO (IMIĘ, NAZWISKO, PESEL, NAZWISKO_RODOWE_MATKI) " _
+ "VALUES(:IMIĘ,:NAZWISKO,:PESEL,:NAZWISKO_RODOWE_MATKI)"
.Prepared = True
End With
Set prmpNAME = insertCmnd.CreateParameter(name:=":IMIĘ", Type:=adLongVarChar)
Set prmpSURNAME = insertCmnd.CreateParameter(name:=":NAZWISKO", Type:=adLongVarChar)
Set prmpPESEL = insertCmnd.CreateParameter(name:=":PESEL", Type:=adLongVarChar)
Set prmpNRM = insertCmnd.CreateParameter(name:=":NAZWISKO_RODOWE_MATKI", Type:=adLongVarChar)
With insertCmnd.Parameters
.Append prmpNAME **here is a break**
.Append prmpSURNAME
.Append prmpPESEL
.Append prmpNRM
End With
cn.BeginTrans
Do Until excelRecords.EOF
prmpNAME.Value = excelRecords.Fields("IMIĘ").Value
prmpSURNAME.Value = excelRecords.Fields("NAZWISKO").Value
prmpPESEL.Value = excelRecords.Fields("PESEL").Value
prmpNRM.Value = excelRecords.Fields("NAZWISKO_RODOWE_MATKI").Value
insertCmnd.Execute
excelRecords.MoveNext
Loop
cn.CommitTrans
cn.Close
End Sub
谢谢你的帮助 调用
CreateParameter
时,必须指定Size
参数
以下内容不会对我造成3708错误:
CreateParameter(name:=":IMIE;", Type:=adLongVarChar, Size:=1)
创建参数时,请确保.CreateParameter(“,adVarchar,10,值)中提到了SQL中定义的大小