gpt4 book ai didi

sql - 为什么 ADODB 在更新时插入 NULL 值?

转载 作者:行者123 更新时间:2023-11-29 06:21:55 24 4
gpt4 key购买 nike

我有:

With rs
.AddNew ' create a new record
' add values to each field in the record
.Fields("datapath") = dpath
.Fields("analysistime") = "atime"
.Fields("reporttime") = "rtime"
.Fields("lastcalib") = "lcalib"
.Fields("analystname") = "aname"
.Fields("reportname") = "rname"
.Fields("batchstate") = "bstate"
.Fields("instrument") = "NA"
.Update ' stores the new record
End With

当我检查数据库时,看起来它只插入了最后一个字段!

有人遇到过这个问题吗?

最佳答案

编辑:下面的代码有效,但正确的解决方案可以在这里找到: Connecting Excel to Mysql Update PROBLEM

涉及到使用文本数据类型的困难。

<小时/>

这似乎有效,但不要问我为什么:

dpath = "a" ''Trim(Range("B2").Text)
atime = "a" ''Trim(Range("B3").Text)
rtime = "a" ''Trim(Range("B4").Text)
lcalib = "a" ''Trim(Range("B5").Text)
aname = "a" ''Trim(Range("B6").Text)
rname = "a" ''Trim(Range("B7").Text)
bstate = "a" ''Trim(Range("B8").Text)

cn.Open strCon
cmd.ActiveConnection = cn
cmd.CommandText = _
"INSERT INTO `batchinfo` (`datapath`, `analysistime`," _
& "`reporttime`,`lastcalib`,`analystname`,`reportname`," _
& "`batchstate`,`instrument`) " _
& "VALUES (?,?,?,?,?,?,?,?);"

cmd.Parameters.Append _
cmd.CreateParameter("datapath", adChar, adParamInput, 100)
cmd.Parameters.Append _
cmd.CreateParameter("analysistime", adChar, adParamInput, 100)
cmd.Parameters.Append _
cmd.CreateParameter("reporttime", adChar, adParamInput, 100)
cmd.Parameters.Append _
cmd.CreateParameter("lastcalib", adChar, adParamInput, 100)
cmd.Parameters.Append _
cmd.CreateParameter("analystname", adChar, adParamInput, 100)
cmd.Parameters.Append _
cmd.CreateParameter("reportname", adChar, adParamInput, 100)
cmd.Parameters.Append _
cmd.CreateParameter("batchstate", adChar, adParamInput, 100)
cmd.Parameters.Append _
cmd.CreateParameter("instrument", adChar, adParamInput, 100)

cmd.Parameters("datapath").Value = "abc"
cmd.Parameters("analysistime").Value = atime
cmd.Parameters("reporttime").Value = rtime
cmd.Parameters("lastcalib").Value = lcalib
cmd.Parameters("analystname").Value = aname
cmd.Parameters("reportname").Value = rname
cmd.Parameters("batchstate").Value = "bstate"
cmd.Parameters("instrument").Value = "NA"

cmd.Execute

关于sql - 为什么 ADODB 在更新时插入 NULL 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2822934/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com