如何删除“验证规则”在MS ACCESS中查询一个列
本文关键字:ACCESS MS 查询 一个 验证规则 删除 何删除 验证 规则 | 更新日期: 2023-09-27 17:53:24
我在MS ACCESS中有一个客户文件,它包含许多表。
:
在表(X)中,列(Y)存在"=1 Or 2"的验证规则。如果可能的话,我想将其更改为"=1 OR 2 OR 3 OR 4",这是一个字节列。否则,我想完全删除该列的验证规则。我使用c#,我需要一个查询这样做.......
Access SQL不能用于添加、删除或更改验证规则。这只能通过DAO TableDef来实现。
如果你在Access中使用VBA,你可以这样做来创建你的验证规则。
CurrentDb.TableDefs("X").Fields("Y").ValidationRule = "IN (1,2,3,4)"
我使用IN (1,2,3,4)
而不是1 OR 2 OR 3 OR 4
,但两者都应该工作。
也许你可以使用Microsoft.Office.Interop.Access
从c#做同样的事情。
另一种选择是使用Access SQL创建检查约束。检查约束与验证规则不同,但可以用于实现相同的目标。
ALTER TABLE X ADD CONSTRAINT one_to_four CHECK (Y IN (1,2,3,4));
您仍然需要放弃现有的验证规则。如果不可行,可以创建一个结构与旧表相同的新表,添加检查约束,最后将旧表中的数据加载到新表中。