VB不匹配错误

时间:2010-06-28 13:45:05

标签: ms-access vb6

我不断收到此行的不匹配错误:

UPDATE tblLunchTime SET [End] = '06/28/2010 9:41:34 AM' WHERE Start = '06/28/2010 9:41:31 AM'

有谁知道为什么?

编辑:其余代码已添加。

'Save end time in database.
Dim strValuesQuery As String

strValuesQuery = _
    "UPDATE tblLunchTime " & _
    "SET [End] = '" & Now & "' " & _
    "WHERE Start = '" & StartTime & "' "

'Execute Query.
DoCmd.RunSQL strValuesQuery

2 个答案:

答案 0 :(得分:1)

我最后将pound符号添加到我的变量中,以便以所需的方式对其进行格式化:

strValuesQuery = _
    "UPDATE tblLunchTime " & _
    "SET EndTime = #" & Now & "# " & _
    "WHERE StartTime = #" & StartTime & "#"

答案 1 :(得分:0)

您是否正在执行此查询到SqlServer,oracle?

客户端和服务器端是否使用相同的语言?

使用date To String和String to date需要特定的格式转换。

对于oracle:EndTime = to_date('2010/01/05','yyyy / mm / dd')

这可以避免语言不匹配。

我总是使用参数。

“UPDATE tblLunchTime SET EndTime =?WHERE StartTime =?” - 对于OleDb

参数可以避免一些错误,还可以提高性能(服务器缓存游标)。