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

AndreHollins

AndreHollins

2016-02-19 17:26

想不想get新技能酷炫一下,今天图老师小编就跟大家分享个简单的Delphi3数据库编程中的查找字段教程,一起来看看吧!超容易上手~

  在设计数据库时,我们尽量去掉一些冗余的数据字段。例如在职工信息库中,对于职工所在单位,我们仅保留单位编号,而具体的单位信息,则存放在单独的单位信息库中,这是符合关系数据库理论的规范化要求的。

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

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

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

  一、TDBlookUpComboBox控件的用法

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

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

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

  图一

  二、DBGrid中的查找字段

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

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

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

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

  图二

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

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

展开更多 50%)
分享

猜你喜欢

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

编程语言 网络编程
Delphi3数据库编程中的查找字段

delphi编程计算数据库某字段的值

编程语言 网络编程
delphi编程计算数据库某字段的值

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

delphi编程数据库日期显示

编程语言 网络编程
delphi编程数据库日期显示

Ajax获取数据库中的字段

Web开发
Ajax获取数据库中的字段

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

delphi编程向数据库发送密码

编程语言 网络编程
delphi编程向数据库发送密码

VC编程中如何操作数据库中的图像字段

C语言教程 C语言函数
VC编程中如何操作数据库中的图像字段

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

与网络时间同步 设Win7精确时间

与网络时间同步 设Win7精确时间

多层C/S的客户端调用服务器端的方法

多层C/S的客户端调用服务器端的方法
下拉加载更多内容 ↓