转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> Delphi程序 >> 正文
Delphi3数据库编程中的查找字段         ★★★★

Delphi3数据库编程中的查找字段

作者:闵涛 文章来源:闵涛的学习笔记 点击数:803 更新时间:2009/4/23 18:24:09
  在设计数据库时,我们尽量去掉一些冗余的数据字段。例如在职工信息库中,对于职工所在单位,我们仅保留单位编号,而具体的单位信息,则存放在单独的单位信息库中,这是符合关系数据库理论的规范化要求的。

  随之而来的问题是,在编辑职工信息时,大多数用户不愿意与单位编号打交道,而希望直接输入或选择单位名称,因为单位编号太不直观和容易出错。尽管用SQL语言,可以在Query控件中实现两个数据库的链接,但是比较麻烦,Delphi3提供了一种捷径,让用户在编辑职工信息库时,直接操作单位名称,从包含有所有单位名称的下拉式列表中进行选择,这就要用到非常实用的查找字段编程

  在窗体中一次编辑一条记录和在DBGrid网格中一次编辑多条记录,查找字段的应用方法是迥然不同的,前者要用到TDBLookUpComboBox控件,而后者要用到表格的LookUp Field字段。

一、TDBlookUpComboBox控件的用法
  TDBLookUpComboBox控件可以同时与两个数据源相链接,一个是主数据源Datasource,另一个是二级数据源ListSource。在主数据源和二级数据源中,必须有意义完全相同的两个字段,称之为查找字段(或关键字段),分别设置为TDBLookUpComboBox的DataField和KeyField属性,ListField属性用于设定显示字段,显示字段来自于二级数据源ListSource。

  举例加以说明,职工信息库包括有职工编号、姓名、出生日期、性别、籍贯、单位编号等字段,单位信息库包括有单位编号、单位名称、负责人姓名、电话号码、传真号码、电子邮件地址等字段。在编辑职工信息时,用单位信息库中的单位名称代替某个职工的单位编号,需要在窗体中增加一个TDBLookUpComboBox控件对象,设置它的属性:

datafield=dwbh //职工信息库的单位编号字段 datasource=datasource1 //职工信息库数据源 keyfield=dwbh //单位信息库的单位编号字段 listsource=datasource2 //单位信息库数据源 listfield=dwmc //用于显示的单位库中的单位名称字段


  运行时界面如图一,可以用鼠标单击单位名称编辑框右边的下箭头,从激活的下拉式列表中进行选择。
lpydelphi200006100001.jpg
  图一


二、DBGrid中的查找字段
  在DBGrid中实现查找字段,需要提供一个二级数据表格(Table2),Table2指向单位信息库,同时要为主数据库表格Table1增加一个查找字段(LookUp Field)。设计的方法略为复杂一些。

   1、双击Table1控件,为Table1(职工信息库)增加所有字段,修改各个字段的显示标签,设置Table1DWBH.Visible=False,因为我们不需要显示单位编号。

   2、在Form1.Table1窗口,右键“呼”出快捷菜单,选择New Field为Table1增加一个查找字段Table1DWMC,如图二。

lpydelphi200006100002.jpg
  图二

   3、修改Table1DWMC.DisplayLabel=单位名称;

   运行界面如图三,可以用鼠标单击某个记录的单位名称字段,激活一个下拉式列表,从中进行选择。
lpydelphi200006100003.jpg


没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台