2

我正在使用 VB6 和 MS Access。我的 sql 命令是

insert into BatchInfo (BName,BDate,Currency) values('" & Me.txtBatchName.Text & "','" & Me.dtpBatchDate.Value & "','" & Me.cboCurrency.Text & "')

命令在运行时的输出是

"insert into BatchInfo (BName,BDate,Currency) values('batch1','8/2/2012','AED')"

这是 BatchInfo 表的架构

BatchID   AutoNumber
BName     Text
BDate     Date/Time
Currency  Text

我找不到任何语法错误。请帮忙。

4

3 回答 3

6

Currency是一个保留字,因此转义它;

insert into BatchInfo (BName, BDate, [Currency]) values (...
于 2012-08-03T15:27:23.367 回答
2

MS Access 通常喜欢#日期前后的标志:

insert into BatchInfo (BName,BDate,Currency) 
values('" & Me.txtBatchName.Text & "','#" & Me.dtpBatchDate.Value & "#','" & Me.cboCurrency.Text & "')
于 2012-08-03T15:26:23.637 回答
0

您使用的是单引号,而不是双引号。

试试这个

insert into BatchInfo (BName,BDate,Currency) values(""" & Me.txtBatchName.Text & """,#" & Me.dtpBatchDate.Value & #",""" & Me.cboCurrency.Text & """)
于 2012-08-03T15:25:15.100 回答