请问错在那了 VB 的

来源:百度知道 编辑:UC知道 时间:2024/06/04 21:32:28
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim sqlcommand As String
cnn.Open "provider=Microsoft.Jet.OLEDB.4.0; data source=" & App.Path & "\Mydb.mdb"
sqlcommand = "INSERT INTO test VALUES ('" + Date + "','" + Time + "','" + Text1.Text + "')"
rs.Open sqlcommand, cnn, adOpenKeyset, adLockPessimistic
提示是SQL那里错了。我想获取当前时间和日期。它说类型不匹配,我在ACCESS里设置的格式跟系统时间一样
2008-10-10 11:22:22

Private Sub Timer1_Timer()
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim sqlcommand As String
cnn.Open "provider=Microsoft.Jet.OLEDB.4.0; data source=" & App.Path & "\Mydb.mdb"
sqlcommand = "INSERT INTO(date,time,content) test VALUES ('" + Date + "','" + Time + "','" + Text1.Text + "')"
rs.Open sqlcommand, cnn, adOpenKeyset, adL

INSERT INTO test(字段名1,字段名3,字段名3) VALUES ('" + Date + "','" + Time + "','" + Text1.Text + "')"
如果数据量大,建议用
rs.addnew
rs("字段名")=你要添加的值
……
rs.update

把Date、Time用CStr()函数转换一下呢?

或者把你+号换成&符号看看

最好对 date进行一个format 因为有时候系统他加入
2008-10-28 下午 13:00:00 或 是出现 2008-10-28 13:00:00 PM
这样的格式插入的时候就出错了..

看了补充:
那可能不是日期字段问题了,你把sqlcommand msgbox 出来看一下SQL语句是不是完整的.

错在程序中!!!!!!!!!

是你的表的字段名用了关键字吧,试试这个:

sqlcommand = "INSERT INTO([date],[time],[content]) test VALUES ('" & Date & "','" & Time & "','" & Text1.Text & "')"