gpt4 book ai didi

sql - MS Access 中的条件默认值

转载 作者:行者123 更新时间:2023-12-02 02:24:37 27 4
gpt4 key购买 nike

我使用的是 MS Access 2007。我有一个包含多个电话号码字段(手机、家庭、工作、主要*)的表单。所有这些字段的数据源都来自客户表。

基本上,我要做的是为 primary* 字段建立一组默认值。我想完成这样的事情:

If [cell] <> Null:
primary* = [cell]

elif [cell] Is Null and [home] <> Null:
primary* = [home]

elif [cell] Is Null and [home] is Null and [work] <> Null:
primary* = [work]

我知道这不是很符合逻辑的代码,但我希望您能看到我在这里尝试做的事情。我只希望 primary* 字段默认为手机号码(如果有的话),然后是家庭号码(如果没有手机),最后是工作号码(如果它是唯一可用的手机号码)。

有没有办法使用 Access 中的“属性”面板执行此操作?

最佳答案

数据控件的默认值属性在新记录开始时被评估/应用。很明显,这发生在新记录被插入到表中之前。也许不太明显,它发生在用户将任何数据输入到新记录之前。因此,即使可以根据另一个字段值获得默认值……其他字段此时也将为 Null,除非它们也分配了默认值。

在不同的情况下,您可能会考虑窗体的插入事件之前将您想要的任何控件值分配给目标控件。但是,如果您希望用户在保存记录之前更改默认主值,那么这就不太合适了。

我想我可能会退回到在各个电话号码控件上使用更新后事件。所以对于 [cell] 更新后,你可以使用:

If IsNull(Me.primary) Then
Me.primary = Me.cell
End If

其他的也类似。

在用户或代码为Me.primary赋值后,它将保持不变,除非用户更改它。

关于sql - MS Access 中的条件默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6514925/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com