car*_*uzo 2 parameters vba adodb
我有一个问题作为主题。运行错误 3708 和我的代码在追加参数行中断。我哪里出错了?oracle中的表只有这4列。
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
Run Code Online (Sandbox Code Playgroud)
感谢您的帮助!
Size调用时必须指定参数CreateParameter。
以下不会对我造成错误 3708:
CreateParameter(name:=":IMIE;", Type:=adLongVarChar, Size:=1)
Run Code Online (Sandbox Code Playgroud)