设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1825|回复: 5
打印 上一主题 下一主题

[其它] [求助]acc+sql后,绑定数据的控件为空,可是sql表中该列为主键,错误如何处理?

[复制链接]
跳转到指定楼层
1#
发表于 2006-9-29 03:11:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
acc通过odbc链接到sql后,当一个绑定数据的控件为空,可是sql表中该列为主键,错误如何处理?

在 acc中弹出的消息框如下:如何截获该错误,处理该错误?


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2006-9-29 05:19:00 | 只看该作者
设置为主键是不允许NULL值
3#
 楼主| 发表于 2006-9-30 03:26:00 | 只看该作者
以下是引用andymark在2006-9-28 21:19:00的发言:
设置为主键是不允许NULL值

这是当然的事情。问题就是:


我该如何 截获并处理 上图中的消息?想要替换为自定义的消息。

还有就是我根本就看不到 odbc 错误 或者 sql update 错误消息。

可是使用 acc+sql以后,原来的方法就失效了。

==========================================================

在 acc中,我使用 绑定控件所在窗体的  error 代码可以很好地解决这个问题。


acc中我使用以下代码可以解决 主键为空的错误处理 的问题:

当清除name字段的值以后,滚动记录或者关闭窗体,可以看到自定义消息。

Private Sub Form_Error(DataErr As Integer, Response As Integer)

    Debug.Print DataErr


Select Case DataErr

   
   
    Case 2169, 3058 '捕获意外关闭窗体时,系统提示不能保存的消息
   
    Response = acDataErrContinue '注销系统消息
   
    MsgBox "主键字段为null,您的编辑将无法无法保存"

   
   
      
    Case Else  '否则显示程序中其他没有被开发者所预料到的错误
    Response = acDataErrDisplay
   
   

End Select

End Sub

相关附件如下:



===================================


[此贴子已经被作者于2006-9-29 20:25:54编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
4#
 楼主| 发表于 2006-10-1 01:42:00 | 只看该作者
仅仅在acc中我使用3楼代码可以解决 主键为空的错误处理 的问题。

可是使用 acc+odbc上面的方法就无效了,该如何解决?

[此贴子已经被作者于2006-9-30 17:43:32编辑过]

5#
 楼主| 发表于 2008-8-8 17:06:12 | 只看该作者
请教的问题重新表述如下:

有一sql表,名称为d 。该表 中有一个名称为 a  的'列,该列被设为'不允许为空' 。
在acc中有一个窗体 ,含有一个控件 c , 控件c 绑定到表d 的 a列。
使用acc+odbc+sql的方式。

问题:当在控件c中输入一个合法值(数据类型和sql表中的a列相符),然后使用backspace清空该控件,就会有一楼贴图的错误提示。怎样截获该提示,并替换为自己定义的msgbox ?

[ 本帖最后由 wu8313 于 2008-8-8 17:14 编辑 ]
6#
 楼主| 发表于 2008-8-9 09:47:17 | 只看该作者
dddddddddddd
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-26 03:24 , Processed in 0.116587 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表