MS ACCESS日期验证规则(大于DB中的任何其他数据)

时间:2014-01-08 12:23:39

标签: sql validation date ms-access

我很难在表单([F_Bill_Date])中为日期字段编写MS-Access验证规则。

此表单允许我创建一个计费数据寄存器并将其存储在名为“Bills”的表中。

我想为[F_Bill_Date]表单字段创建验证规则,以确保其中编辑的数据大于“Bills”表中存储的任何其他数据。像[F_Bill_Date]>这样的东西SELECT MAX(Bill_Date)FROM Bills。

就我在教程中看到的而言,我认为规则应该是这样的:

  

MAX([Bill_Date])   要么   MAX([Bills]。[Bill_Date])

但它们都不起作用。

有什么建议吗?

由于

1 个答案:

答案 0 :(得分:1)

您可以在表上设置约束,以确保无论表使用何处,都适用约束。您可以使用表单错误事件捕获错误。

例如:

Sub AddConstraint()
'This could not be run in the query design window
'It adds a check against a table
sSQL = "ALTER TABLE Table2 ADD CONSTRAINT LimitRule " _
     & "CHECK (EventDate <= (SELECT Max(BillDate) FROM Table3))"
CurrentProject.Connection.Execute sSQL
End Sub

请参阅:http://msdn.microsoft.com/en-us/library/office/bb177889(v=office.12).aspx