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

tongyizh 2004-05-05 11:02:46
在sql表中定义了主键值的唯一id,出现插入重复值时可以用文字表达错误提示,屏蔽系统自动提示的错误信息.
什么事件中?什么代码?什么意思?
...全文
46 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
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 可以实现你的需求

609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧