ACCESS中又一个和sql不同的地方:时间字段。Sql中时间以Date类型插入没有问题,但Access中就有问题了,会提示“标准表达式中数据类型不匹配”,把要插入的时间提前转换成String类型就不会报错了。尽管Access存在各各样的缺点,但它便于携带和不需要安装的优点还是体现了生存价值。
如下代码:
Dim theDate As String = Format(dtp1.Value, "yyyy-MM-dd HH:mm:ss").ToString
Dim theTime As String = Format(Now(), "yyyy-MM-dd HH:mm:ss").ToString
EXESQLCommand("update INFO set pName='" & cbbFz.Text & "',pNum=" & proNum & ",pDate='" & theDate & "',pType='" & cbbType.Text & "',pNote='" & txtNote.Text & "',pTime='" & theTime & "',pUser='" & Trim(cbbUser.Text) & "' where ID=" & selectId & "")
以上在Access中不会报错,但如果这样Dim theData as Date=Format(dtp1.Value, "yyyy-MM-dd HH:mm:ss"),就会提示 标准表达式中数据类型不匹配