|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
数据库技术
→
『 VFP论坛 』
→ 如何防止数值上溢及解决方法
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
467
人关注过本帖
标题:
如何防止数值上溢及解决方法
只看楼主
加入收藏
tjdeming
等 级:
论坛游民
帖 子:429
专家分:54
注 册:2013-3-4
结帖率:
90.14%
楼主
收藏
已结贴
√
问题点数:20 回复次数:9
如何防止数值上溢及解决方法
请教各位大佬:如何防止此类问题发生及解决办法
假若
图片附件: 游客没有浏览图片的权限,请
登录
或
注册
在运算repl all A with B-C出现了字段的值为**,
①可否用if endif来防止,若能代码如何写。
②在程序运行过程中出现这个提示后,若不确定表的字段,如何找出带有*值的字段?
搜索更多相关主题的帖子:
数值
字段
出现
方法
防止
2023-09-07 20:44
举报帖子
使用道具
赠送鲜花
sdta
来 自:江苏省连云港市
等 级:
版主
威 望:
335
帖 子:9841
专家分:27213
注 册:2012-2-5
第
2
楼
收藏
得分:20
repl all A with iif(B-C>=1000,999,b-c)
[此贴子已经被作者于2023-9-7 22:33编辑过]
坚守VFP最后的阵地
2023-09-07 22:32
举报帖子
使用道具
赠送鲜花
tjdeming
等 级:
论坛游民
帖 子:429
专家分:54
注 册:2013-3-4
第
3
楼
收藏
得分:0
回复 2楼 sdta
感谢感谢感谢,试用了解决了此类情况的出现。再次感谢!
2023-09-08 18:46
举报帖子
使用道具
赠送鲜花
laowan001
等 级:
版主
威 望:
66
帖 子:1089
专家分:2682
注 册:2015-12-30
第
4
楼
收藏
得分:0
这样运行是不报错了,但同时也掩盖了一些错误数据
用ON error试试
[此贴子已经被作者于2023-9-8 18:55编辑过]
2023-09-08 18:54
举报帖子
使用道具
赠送鲜花
tjdeming
等 级:
论坛游民
帖 子:429
专家分:54
注 册:2013-3-4
第
5
楼
收藏
得分:0
回复 4楼 laowan001
谢谢你,对的,那我就单独查询一下字段值为99的记录
通过brow for 字段=99来查询。
2023-09-08 21:52
举报帖子
使用道具
赠送鲜花
laowan001
等 级:
版主
威 望:
66
帖 子:1089
专家分:2682
注 册:2015-12-30
第
6
楼
收藏
得分:0
repl all A with B-C for B-C<1000
不知道你的数据特征,按顶楼内容猜想可以用上面的句子避开错误,但那些>=1000的记录总要有个交待,所以应该另行处理一下
2023-09-08 21:57
举报帖子
使用道具
赠送鲜花
tjdeming
等 级:
论坛游民
帖 子:429
专家分:54
注 册:2013-3-4
第
7
楼
收藏
得分:0
回复 6楼 laowan001
ABC字段宽度均为n(2),字段的值最大为15,b是最大数15,c是发生数最大数也是15,a最后的数据是0,发生b-c出现了负数,所以出现**符号
2023-09-09 09:40
举报帖子
使用道具
赠送鲜花
吹水佬
等 级:
版主
威 望:
451
帖 子:10607
专家分:43186
注 册:2014-5-20
第
8
楼
收藏
得分:0
1、AFIELDS()获取表结构信息
2、根据字段类型、宽度、小数位数等进行判断就可以防止造成数据溢出或缺失。
2023-09-09 11:56
举报帖子
使用道具
赠送鲜花
tjdeming
等 级:
论坛游民
帖 子:429
专家分:54
注 册:2013-3-4
第
9
楼
收藏
得分:0
回复 8楼 吹水佬
谢谢你!时间长了,忘了程序代码,运行中不知哪个字段超出了字段宽度,本来是想通过对数据表中数值型字段检查的,
IF TYPE(字段)="N"
BROW FOR "*"STR(字段)
endif
没有成功。
2023-09-09 12:41
举报帖子
使用道具
赠送鲜花
吹水佬
等 级:
版主
威 望:
451
帖 子:10607
专家分:43186
注 册:2014-5-20
第
10
楼
收藏
得分:0
以下是引用
tjdeming
在2023-9-9 12:41:45的发言:
谢谢你!时间长了,忘了程序代码,运行中不知哪个字段超出了字段宽度,本来是想通过对数据表中数值型字段检查的,
IF TYPE(字段)="N"
BROW FOR "*"STR(字段)
endif
没有成功。
试试转字符串判断
LEFT(TRANSFORM(字段),1)=="*"
2023-09-09 14:54
举报帖子
使用道具
赠送鲜花
10
1/1页
1
快速回复:
如何防止数值上溢及解决方法
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.020671 second(s), 12 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved