“access索引或主关键字不能包含一个空 (Null)值”是什么意思?怎么解决?

“access索引或主关键字不能包含一个空 (Null)值”是什么意思?怎么解决?,第1张

1、这个提示的意思是你的Excel中的关键字段有空值。你要先点教师编号,输入某些数值,然后才可以编辑名字,工作日期等数据;

2、主键中不允许有重复值和空值的,主键可以是一个字段或是一组字段,一组字段叫联合主键;

3、ACCESS中主健或索引都不能超过10个,超过10个,它会有信息提示你的;

4、检查一下新的数据,要不把原始数据表的主码取消。

主健当然是不允有重复值,不然就不叫主健了,但空值还是可以的,不过最好设置两个相关的属性"必填字段”,和"允许空字符串",这两个属性按字面意思理解就是了。

参考运行下列SQL更新查询可将所有记录行的成绩改为空值(Null)
update 成绩表 set 成绩 = Null;
注意,如果成绩字段设置的有效性规则不许为空,那么上述更新查询将报错。
仅需要更改特定记录行时在语句后面加上筛选(where)条件即可。

因为在某些情况下,字段为空,可能是因为信息目前无法获得,或者字段不适用于某一特定的记录。例如,表中有一个“电话号码”字段,将其保留为空白,可能是因为不知道顾客的电话号码,或者该顾客没有电话号码。在这种情况下,使字段保留为空或输入Null值,意味着“不知道”。双引号内为空字符串则意味着“知道没有值”。采用字段的“必填字段”和“允许空字符串”属性的不同设置组合,可以控制空白字段的处理。“允许空字符串”属性只能用于“文本”、“备注”或“超级链接”字段。“必填字段”属性决定是否必须有数据输入。当“允许空字符串”属性设置为“是”时,Microsoft
Access将区分两种不同的空白值:Null值和空字符串。如果允许字段为空而且不需要确定为空的条件,可将“必填字段”和“允许空字符串”属性设置为“否”,作为新“文本”、“备注”或“超级链接”字段的默认设置。
如果只允许没有字段记录值时使字段为空,可将“必填字段”属性和“允许空字符串”属性都设置为“是”。在这种情况下,使字段为空的唯一方法是键入不带空格的双引号,或按空格来输入空字符串。如果不希望字段为空,可将“必填字段”属性设置为“是”,将“允许空字符串”属性设置为“否”。如果希望区分字段空白的两个原因为信息未知和没有信息,可将“必填字段”属性设置为“否”,将“允许空字符串”属性设置为“是”。在这种情况下,添加记录时,如果信息未知,应该使字段保留空白(即输入Null值);如果没有提供给当前记录的值,则应该键入不带空格的双引号("
")来输入一个空字符串。如何查找空字符串和Null值:如果用户需要将表中含有空字符串和Null值的记录做相应的修改,就需要使用“编辑”菜单上的“查找”命令来查找Null值或空字符串的位置。方法是在“数据表”视图或“窗体”视图中,选择要搜索的字段,在“查找内容”框中键入“Null”来查找Null值,或键入不带空格的双引号(””)来查找空字符串,在“匹配”框中选择“整个字段”,并确保已清除“按格式搜索字段”复选框。一般来说,在以升序来排序字段时,任何含有空字段(包含Null值)的记录将列在列表中的第一条。

ACCESS 里面, 应该是使用 IIF 函数。
select
IIF ( afield1 IS NULL, 0, afield1) AS field1
bfield2
from table1 a left join table2 bon afield3=bfield4
注: ACCESS 里面好像是没有 CASE WHEN 的, IIF 主要用来实现 CASE WHEN 的功能。
这里的
IIF ( afield1 IS NULL, 0, afield1)
等价于
CASE WHEN afield1 IS NULL THEN 0 ELSE afield1 END
也就是 假如afield1字段为空的话, 那么显示 0 , 否则显示 afield1

在Access中,有个很重要的字段设置选项--格式。
格式的设置仅用于数据显示的设置,与实际存储的数据无影响,类似于Excel中单元格设置的数字格式,且两者的用法也很类似


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/10458058.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-08
下一篇 2023-05-08

发表评论

登录后才能评论

评论列表(0条)

保存