如何控制关键字段的重复输入及报错

2016-02-19 17:27 6 1 收藏

关注图老师设计创意栏目可以让大家能更好的了解电脑,知道有关于电脑的更多有趣教程,今天给大家分享如何控制关键字段的重复输入及报错教程,希望对大家能有一点小小的帮助。

【 tulaoshi.com - 编程语言 】

  下面以一个实例来说明:在 ‘c:’ 下有一个数据库‘Renshi.dbf’,字段为:‘bianhao’;‘xingming’,类型为字符型,以关键字段‘bianhao’为索引字段,建立数据库的连接。

  我们用控件DBNavigator1、DataSource1、Table1、DBedit1、

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  DBedit2、Table2来建立数据库的连接。其各属性为:

Table1.databasename:=c:;Table1.tablename:=renshi.dbf;Table1.active:=true;DataSource1.dataset:=table1;DBNavigator1.datasource:=DataSource1;

  编号:对应字段bianhaio; 姓名:对应xingming字段;

dbedit1.datasource:=DataSource1;dbedit1.datafield:=bianhao;dbedit2.datasource:=DataSource1;dbedit2.datafield:=xingming;

  这样数据库的连接就建立好了。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  这里我们要求‘编号’为关键字段,不允许重复输入,为了控制输入的编号为唯一,我们在数据库变化时对Table1加入一个Beforepost事件,程序如下:

procedure TForm1.Table1BeforePost(DataSet: TDataSet);beginwith table2 dobegindatabasename:=c:;tablename:=renshi.dbf;indexfieldnames:=bianhao;if not active then open; {判断数据库是否打开}Refresh; {刷新数据库}setkey; {设置数据库为搜索状态}fieldbyname(bianhao).asstring:=dbedit1.text;{设置输入的编号 字段内容为搜索的标准}gotokey;{移动到搜寻的记录上,完成搜索}if gotokey then{如果找到搜索的记录,则gotokey返回true}beginshowmessage(输入的编号已存在!请重新输入);abort; {终止该操作}end;end;end;

  这样,就保证了‘编号’字段的唯一性,当重复输入时,计算机就会提示出错信息,并且该数据不能保存,只能进行修改或放弃保存操作。

  该程序在Delphi4.0下调试通过。

来源:http://www.tulaoshi.com/n/20160219/1615242.html

延伸阅读
C++中的 static 关键字 作者:陈厚辉 前言: 本文只是本人对C++中关于静态类型的一个总结,如错误之处,请大家帮我改正。我分两个方面来总结,第一方面主要是相对于面向过程而言,即在这方面不涉及到类,第二方面相对于面向对象而言,主要说明static在类中的作用。 一、在面向过...
标签: excel
如何根据“关键字”选出Excel 2013中匹配的数据   ①启动Excel2013,如下图所示,关键字是广州、桂林和深圳。也就是说,要选出籍贯为广州、桂林和深圳这三地的内容。首先选中A1:C10表格区域,单击菜单栏--数据--高级。 ②弹出高级筛选对话框,我们在方式中,选择将筛选结果复制到其他位置,这样就不会覆盖源数据,便于对比观...
JScript的语法教程里面说在声明变量时忽略var要害字是完全合法的。但是事实经常又证实想当然的结果是不可靠的。 看看下面这几个例子的结果就知道问题了: script language="javascript" var var00 = 0; document.write(var00 + 'br');var var01 = 1; function foo() { document...
Java 关键字列表 (依字母排序 共51组): abstract, assert,boolean, break, byte, case, catch, char, class, const, continue, default, do, double, else, enum,extends, final, finally, float, for, if, implements, import, instanceof, int, interface, long, native, new, package, private, protected, public, return, short, static, ...
标签: ASP
  巧用in关键字实现数据的批量删除 在WEB编程中经常会碰到数据的批量删除。我们通常的做法是通过循环来实现数据的批量的删除。但是一个程序模块循环用的太多那么这个程序模块的质量就会下降。因此本文就介绍通过巧用in关键字来实现数据的批量删除。 让我们通过一个例子来讲解IN关键字的数据批量删除 假如我们要删除这个页面的数据:相关...

经验教程

590

收藏

85
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部