|
发布日期:2007-2-3
作 者:朱亦文(老师)
问题提出:在我们窗体录入数据的时候,经常想避免重复录入数据,所以,我们在相应的表中对不想重复出现的字段值设置主键。当有重复录入数据时,系统会弹出一个对话框图1:
740)this.width=740" border=undefined>
这需要我们自定义对话框的提示。
解决方法:
使用对主键的约束提示,
Private Sub Form_Error(DataErr As Integer, Response As Integer) Const conDuplicateKey = 3022 Dim strMsg As String
If DataErr = conDuplicateKey Then Response = acDataErrContinue strMsg = "数据必须是唯一的," _ & "请重新输入数据." MsgBox strMsg End If End Sub
上面这段代码是处理主键约束的窗体处理方式 ,对联合主键依然有效。 在窗体中加入这段代码,系统提示自定义为
740)this.width=740" border=undefined>
这样就达到了我们重复录入数据时,自定义错误提示的目的
参考资料
说明: Form.Error 事件 全部显示 全部隐藏 如果在窗体拥有焦点 (焦点:一种接受通过鼠标或键盘操作或 SetFocus 方法进行的用户输入的能力。焦点可由用户或由应用程序设置。具有焦点的对象通常由突出显示的标题或标题栏指示。)时 Microsoft Access 中产生了一个运行时错误 (运行时错误:只有当应用程序运行时才能检测到的错误。),则 Error 事件发生。 语法 重复键 错误代码 3022 表达式.Error(DataErr, Response)
表达式 一个代表 Form 对象的变量。
参数
名称 必选/可选 数据类型 描述 DataErr 必选 Integer 发生错误时由 Err 对象返回的错误代码。可以在 Error 函数中使用 DataErr 参数,将该编号与相应的错误消息相对应。 Response 必选 Integer 该设置确定是否显示错误消息。Response 参数可以是以下固有常量之一。 acDataErrContinue 忽略错误并继续,不显示默认的 Microsoft Access 错误消息。您可以提供自定义错误消息来替代默认的错误消息。 acDataErrDisplay(默认值)显示默认的 Microsoft Access 错误消息。
示例下载: cgi-bin/boke.asp?Userid_13879.showtopic.92.html
|