You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Access 365中如何将文本转换回BigInt?

解决Access中17位文本BigInt与实际BigInt字段比对的问题

核心解决方案

使用Access查询中的CLngLng()函数转换文本字段,直接与链接表的BigInt字段进行比对。该函数支持最大19位整数,完全覆盖你17位的需求,不会丢失精度。

示例查询关联条件:

CLngLng(Trim([你的文本BigInt字段])) = [链接表].[BigInt字段]

为什么之前的函数不行?

  • Val()/Cdbl()/Csng():这些属于浮点型转换,最多仅能保留15位有效数字,17位数值转换后会丢失末尾两位精度,出现科学计数法或末尾补0的情况。
  • CLng():仅支持最大约20亿的10位整数,17位数值远超其范围,直接返回#Num!错误。
  • CDec():理论上支持高精度,但Access查询中对CDec()的输入格式要求严格,若文本存在隐藏空格、格式字符会触发参数错误,且不如CLngLng()直接适配BigInt类型。

额外注意事项

  • 如果文本字段可能包含空格或非数字字符,先通过Trim()或Replace()清理,比如:
    CLngLng(Replace(Trim([你的文本BigInt字段]), ",", "")) = [链接表].[BigInt字段]
    
  • 若文本字段存在空值,需添加空值判断避免报错:
    IIf(IsNull([你的文本BigInt字段]), Null, CLngLng(Trim([你的文本BigInt字段]))) = [链接表].[BigInt字段]
    

内容的提问来源于stack exchange,提问作者BizzyM

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 04:52:10