问个关于类型的问题(很奇怪的说)
<!--#include file="../Inc/conn.asp"-->
<%
Class tTime
'时间读取
Private n, y, r, s, f, m
Private Sub class_Initialize()
n = 2000
y = 01
r = 01
s = 01
f = 01
m = 00
End Sub
Private Function nT()
'增加时间
m = m + 1
If m > 60 Then m = 01: f = f + 1
If f > 60 Then f = 01: s = s + 1
If s > 24 Then s = 01: r = r + 1
If (y = 1 Or y = 3 Or y = 5 Or y = 7 Or y = 8 Or y = 10 Or y = 12) And r > 31 Then
r = 01
y = y + 1
ElseIf (y = 4 Or y = 6 Or y = 9 Or y = 11) And r > 30 Then
r = 01
y = y + 1
ElseIf y = 2 Then
If n Mod 4 = 0 And r > 29 Then
r = 01
y = y + 1
ElseIf r > 28 Then
r = 01
y = y + 1
End If
End If
If y > 12 Then y = 01: n = n + 1
nT = CDate(n & "-" & y & "-" & r & " " & s & ":" & f & ":" & m)
End Function
Public Property Get gNow()
'返回时间
gNow = nT
End Property
End Class
Dim rs, Sql
Dim t
Set t = new tTime
Sql = "Select DateAndTime From Info"
Set rs = Server.CreateObject("Adodb.RecordSet")
rs.Open Sql, conn, 1, 3
Do While Not rs.Eof
rs(0) = t.gNow
'rs.Update
'Response.Write rs("DateAndTime").Value & "<br />"
rs.MoveNext: Loop
Set t = Nothing
rs.Close: Set rs = Nothing
Set conn = Nothing
%>
此段代码只事修改DateAndTime(字段类型:datetime)字段
我怎么看也看不出问题。
可是运行后说
Microsoft VBScript 运行时错误 (0x800A000D)
类型不匹配: 'CDate'
/Cs/upStatic.asp, 第 37 行
可是我For输出的时候就不会有这样的问题。。。
|