简单问题:自己用文字表达主键值出现重复的错误!快达快得分

tongyizh 2004-05-05 11:02:46
在sql表中定义了主键值的唯一id,出现插入重复值时可以用文字表达错误提示,屏蔽系统自动提示的错误信息.
什么事件中?什么代码?什么意思?
...全文
27 9 点赞 打赏 收藏 举报
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
tongyi226 2004-05-07
奇怪,我用sqldbcode得出错误号为2627,可是在数据窗口的dberror事件中定义了代码:
if sqlca.sqldbcode=2627 then
messagebox("主键重复","主键值重复,重新检查!")
return
end if
为什么弹出的还是原来的代码式提示,而我预定义的语言提示却无效呢?
  • 打赏
  • 举报
回复
my420 2004-05-06
你的上述言论根本和你的提问不是一码事,主键重复的代码你自己可以看到,因为你已经捕捉到这个错误了。后面那句需要代码大全跟主题更是风马牛不相及。
20分不算多,但是你不应该这么快就改变你以前说过的东西,做人如此,做程序也应该差不多。
  • 打赏
  • 举报
回复
tongyizh 2004-05-06
我知道处理错误事件的方法,只是不知道错误事件的代码,希望提供主键值重复的代码以供提示使用者而已.请问有没有错误代码大全给兄弟发一份:wanghan226@sohu.com 谢谢
  • 打赏
  • 举报
回复
coco0026 2004-05-06
CHOOSE CASE sqldbcode
CASE -193
messagebox(" 输入资料错误~","输入资料不能重复")
CASE -195
messagebox(" 输入资料错误~","输入资料不能为空白")
CASE -157, 999
messagebox(" 输入资料错误~","输入资料超过精确度")
CASE -194
messagebox(" 输入资料错误~","参照来源资料不存在,请先建立来源资料")
CASE -198
messagebox(" 输入资料错误~","删除或修改的资料,已经被其它作业~使用到,无法修改或删除")
CASE ELSE
ll_pos = pos(SQLERRTEXT,":")
ll_pos2 = pos(SQLERRTEXT,"No changes", ll_pos)
if ll_pos > 0 and ll_pos2 > 0 then
Messagebox("输入资料错误~", Mid(SQLERRTEXT, ll_pos + 1, ll_pos2 - ll_pos - 1))
end if

END CHOOSE
  • 打赏
  • 举报
回复
tongyi226 2004-05-06
或许我提问的问题方式不妥但我不认为我做人和这有关系,我做的程序并不高明但也不值得其他人侮辱。请你回避
  • 打赏
  • 举报
回复
my420 2004-05-05
string ls_dberror
if sqlca.dberror <> 1 then
ls_dberror = trim(dberror,1,9)
messagebox("error",数据库错误+ls_dberror)
end if
大概是这样,具体的格式可能有错误
  • 打赏
  • 举报
回复
klbt 2004-05-05
在数据窗口的dberror事件编码,具体与你的数据库有关
  • 打赏
  • 举报
回复
tongyizh 2004-05-05
能否给我转发一个,我没有帐号和密码,登陆不上,wanghan226@sohu.com
  • 打赏
  • 举报
回复
mittee 2004-05-05
在pb里面数据库出现的每个错误都会有一个错误代码,
找到代码就可以知道错误信息。这个已经有前人作好了,
在www.pdriver.com上一个tragerror.pbl 可以实现你的需求
  • 打赏
  • 举报
回复
相关推荐
发帖
DataWindow
加入

581

社区成员

PowerBuilder DataWindow
申请成为版主
帖子事件
创建了帖子
2004-05-05 11:02
社区公告
暂无公告