【问题标题】:Access 2003 - Creating an index on two fields which holds even when one field is nullAccess 2003 - 在两个字段上创建索引,即使一个字段为空,该索引也成立
【发布时间】:2013-06-22 03:17:04
【问题描述】:

这是我正在使用的表格的轮廓:

Quote - a unique, not null number
Revision - text, a single character (not unique, allows null)

Quote 和 Revision 的组合必须是唯一的,即使 Revision 为空。例如,该表允许 (123,A) 和 (123,B) 同时存储 (123,A) 或 (123,null) 多次。

目前,我在 Quote 和 Revision 上有一个“唯一”索引(在“索引”窗口中设置),它提供了所需的行为,除非 Revision 为空。在索引中,我将“忽略空值”设置为否,但这并不能解决问题。

从试图找到解决方案开始,我猜我需要使用某种条件索引或约束,但到目前为止我还没有设法让它工作(这是我第一次需要解决此类问题,所以没有太多经验)。

我们将不胜感激!

【问题讨论】:

    标签: sql ms-access indexing constraints ms-access-2003


    【解决方案1】:

    对于 Access 2003,我认为最接近的方法是使用空字符串而不是 Null 值。也就是说,您可以将现有的 Null 转换为空字符串...

    UPDATE Quotes SET Revision="" WHERE Revision IS NULL
    

    ...然后在设计视图中打开表格并为 [Revision] 字段设置以下属性:

    Default Value: ""  
    Required: Yes
    

    【讨论】:

    • 谢谢,这行得通 =) 我不认为空字符串的行为会有所不同。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2015-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-15
    • 1970-01-01
    • 2012-07-27
    • 1970-01-01
    相关资源
    最近更新 更多