参数类型错误、超出可接受范围或相互冲突 VBSCRIPT ERROR

Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another VBSCRIPT ERROR

代码:

 <%@LANGUAGE="VBSCRIPT"%>

<% 
set updatetime = Server.CreateObject("ADODB.Connection")
updatetime.open "DRIVER=SQL Server;***************************************"
If request.form("in_out")="checkin" then
updatetime.execute ("insert into hourlist (username, checkintime, paid,breakCount) values ('"&session("MM_username")&"', '"&Now()&"', 0, 2) ")

End if

If request.form("in_out")="checkout" then
updatetime.execute ("update hourlist set checkouttime='"&Now()&"' where username='"&session("MM_username")&"' and checkouttime is NULL")
End if
If request.form("in_out")="breakcheckin" then
updatetime.execute ("update  hourlist set  breakCheckIn='"&Now()&"' where ID='"&session("MM_ID")&"'  ")
updatetime.execute ("update  hourlist set  breakCheckOut=Null where ID='"&session("MM_ID")&"' and breakCheckOut is not NULL  ") 
End if
If request.form("in_out")="breakcheckout" then
updatetime.execute ("select  breakCheckIn from hourlist where ID='"&session("MM_ID")&"'  ")
Dim BTD
BTD=Round(Csng(DateDiff("n", (updatetime.Fields.Item("breakCheckIn").Value), (Now()))), 2)
updatetime.execute ("update hourlist set breakCheckOut='"&Now()&"', breakCount=breakCount-1 where ID='"&session("MM_ID")&"' ")
updatetime.execute ("update hourlist set breakTime='"&BTD&"' where ID='"&session("MM_ID")&"' ")
updatetime.execute ("update hourlist set breakCheckIn=NULL where ID='"&session("MM_ID")&"' and breakCheckIn is not NULL ")
End if
updatetime.close
set updatetime=nothing
response.redirect "employee.asp?in_out="&request.form("in_out")

%>

取决于收音机 select 我做了不同的事情,我在 21 行(BTD=Round... 行)收到 "ADODB.Connection error '800a0bb9' " 错误有人能告诉我我做错了什么吗那条线? "updatetime.Fileds" 是我写错了吗?

抱歉我的英语不好。

您的 updatetime 是连接,而不是记录集(带有 .Fields)。您可能需要存储

中的 result/recordset

updatetime.execute ("select breakCheckIn from hourlist where ID='"&session("MM_ID")&"' ")

在一个变量中并在后面的语句中使用它的字段(或者 - 更好 - 参数化查询)。

更新评论:

使用Set将对象(记录集)分配给变量。

Dim myConnection, myRecordset    
set myRecordset = Server.CreateObject("ADODB.Recordset")
set myConnection = Server.CreateObject("ADODB.Connection")
myConnection.Open "DRIVER=SQL Server;***************************************"

myRecordset.Open "select breakCheckIn from hourlist where ID='"&session("MM_ID")&"' ", myConnection

Dim bciValue = myRecordset("breakCheckIn")
Response.Write "BreakCheckIn value is: " & bciValue

myRecordset.Close
myConnection.Close