我知道这个问题已被问过几次,但没有一个解决方案可以解决我的问题。
我正在尝试在MS Access 2007中名为“Audit Trail”的表中插入一行。
主键是“活动否”列
以下是我的疑问:
INSERT INTO [Audit Trail]
([Activity No], [Project Id], [Activity Date],[Activity Location],[Activity Description],[Data Reference (File No)],[Participant Id],[Person Reporting],[Comments])
VALUES
('6','SFT 2013','1/1/2014','AAA','AAA','AAA','AAA','AAA','AAA')
活动没有列的数据类型是Number(最初它是自动编号,但我稍后更改了),活动日期是datetime,其余是Text。
它给我一个错误
MS访问无法附加追加查询中的所有记录
Microsoft Access无法在追加查询中附加所有记录。 由于类型转换失败,Microsoft Access将0字段设置为Null,并且由于密钥冲突而没有向表中添加1>记录,由于锁定违规而导致0记录,并且由于验证规则违规而导致0记录>。 你想要运行查询吗?
此表也没有任何外键。它之前有一个,但我删除了这个关系。
但是我可以通过表格的UI输入相同的值。
答案 0 :(得分:1)
你说“活动没有列的数据类型是数字......活动日期是日期时间”。
请放弃您在[Activity No]
中插入的数字周围的引号,并使用#
日期分隔符围绕您插入[Activity Date]
的值。我也更喜欢使用 yyyy-mm-dd 格式来表示文字日期值。
INSERT INTO [Audit Trail]
(
[Activity No],
[Project Id],
[Activity Date],
[Activity Location],
[Activity >Description],
[Data Reference (File No)],
[Participant Id],
[Person Reporting],
[Comments]
)
VALUES
(
6,
'SFT 2013',
#2014-01-01#,
'AAA',
'AAA',
'AAA',
'AAA',
'AAA',
'AAA'
)