知识大全 简单数据库应用的创建及MASTAPP介绍(三)[4]

Posted 有效性

篇首语:永不毁灭的无价之宝,是一个的学问。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 简单数据库应用的创建及MASTAPP介绍(三)[4]相关的知识,希望对你有一定的参考价值。

DELPHI基础教程:简单数据库应用的创建及MASTAPP介绍(三)[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  基于数据库表的有效性验证

  在用户创建数据库表时就建立有效性验证机制 如在使用DBD创建一个表时 我们可以为创建的数据库表说明一些验证手段 包括字段的最大值 最小值 图形字段的显示格式等等 在设定这些有效性验证机制时 不需要编写任何程序代码 基于数据库表的有效性验证是当数据写到数据库之前 由数据库本身来执行 Delphi也执行一些有效性验证 如在数据写到数据库之前Delphi会验证每一个字段是否被填入相应的值 有关这种途径来验证数据的有效性的详细情况请参考DBD的使用

  基于字段的有效性验证

  一般有两种方法来进行这种方式的有效性验证

  ①为记录中需要设置有效性验证的字段编写Onvalidate事件处理过程 这样每当该字段的值被修改时 该字段的OnValidate事件处理过程就会被调用 进而对被修改的字段值进行验证

  ②对于记录中要求非空的字段(如口令或关键字等) 我们必须首先设置这些字段的Required属性为True 然后为这些字段编写OnValidate事件处理过程 这样在修改现存记录或插入新记录时 在写入数据库之前 如果要求非空的字段中没有填入适当的字段值 那么会出现错误信息提示用户必须输入字段值

  基于记录的有效性验证

  这种验证方式一般在TTable部件的BeforePost事件处理过程中进行处理 即在记录写回到数据库之前对记录的每个字段值进行有效性验证

  例 在程序中对字段值的有效性进行验证

   创建一个用TEdit部件浏览ORDERS DB表的应用 如图 所示

   修改TDataSource部件的AutoEdit属性为True

   双击TTable部件打开字段编辑器Fields Editor 并单击SaleDate字段

   在Object Inspector中双击SaleDate字段对象的OnValidate事件 为该字段对象编写事件处理过程如下

  TForm Table SaleDateValidate(Sender:TField)

  begin

  If SaleDate Value>Now then

  raise Exception Create( 不能输入一个未来的日期 )

  end;

  当这个应用程序运行时 用户修改或插入ORDERS DB中的记录时 该应用程序会对销售日期(SaleDate)字段的值进行验证 该字段值不能晚于系统的当前日期 程序中调用Now方法获得系统的当前日期 如果字段值大于系统的当前日期会出现一错误信息提示框 告知用户不能输入一个未来的日期

  使用TDBComBox部件和TDBLookupComBox部件来限制用户输入字段值的范围

  创建查看orders db表的应用 窗体中显示Terms 字段的是TDBComBox部件 显示EmpNo字段的是TDBLookupComBox部件

  TDBComBox和TDBLookupComBox部件的属性值如表 所示

  表 窗体中各部件的属性设置

  ━━━━━━━━━━━━━━━━━━━━━━━━━━━

  部 件 属 性 属 性 值

  ───────────────────────────

  DataField Terms

  DBComBox DataSource DataSource

  Items Prepaid

  Net

  COD

  ───────────────────────────

  DataField EmpNo

  DataSource DataSource

  DBLookupComBox LookupSource DataSource

  KeyField EmpNo

  LookupField EmpNo

  ───────────────────────────

  DataSource DataSet Table

  AutoEdit True

  ───────────────────────────

  DataSource DataSet Table

  AutoEdit True

  ───────────────────────────

  Table DatabaseName DemosDB

  TableName orders db

  ───────────────────────────

  Table DatabaseName DemosDB

  TableName orders db

  ━━━━━━━━━━━━━━━━━━━━━━━━━━━

  该应用运行时 当用户修改和插入记录到ORDERS DB表中时 Terms字段的值可以从组合框中的Prepaid Net COD三个值中任选 EmpNo字段的值是从另一个表Employee中获得的雇员号码 用户可以从中选择

  返回目录 DELPHI基础教程

       编辑推荐

       Java程序设计培训视频教程

       J EE高级框架实战培训视频教程

  Visual C++音频/视频技术开发与实战

  Oracle索引技术

  ORACLE G数据库开发优化指南

  Java程序性能优化 让你的Java程序更快 更稳定

  C嵌入式编程设计模式

  Android游戏开发实践指南

cha138/Article/program/Delphi/201311/25166

相关参考

知识大全 简单数据库应用的创建及MASTAPP介绍(三)[3]

DELPHI基础教程:简单数据库应用的创建及MASTAPP介绍(三)[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我

知识大全 简单数据库应用的创建及MASTAPP介绍(二)[2]

DELPHI基础教程:简单数据库应用的创建及MASTAPP介绍(二)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我

知识大全 简单数据库应用的创建及MASTAPP介绍(二)[1]

DELPHI基础教程:简单数据库应用的创建及MASTAPP介绍(二)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我

知识大全 简单数据库应用的创建及MASTAPP介绍(一)[3]

DELPHI基础教程:简单数据库应用的创建及MASTAPP介绍(一)[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我

知识大全 简单数据库应用的创建及MASTAPP介绍(一)[1]

DELPHI基础教程:简单数据库应用的创建及MASTAPP介绍(一)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我

知识大全 简单数据库应用的创建及MASTAPP介绍(一)[2]

DELPHI基础教程:简单数据库应用的创建及MASTAPP介绍(一)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我

知识大全 简单数据库应用的创建及MASTAPP介绍(二)[4]

DELPHI基础教程:简单数据库应用的创建及MASTAPP介绍(二)[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我

知识大全 简单数据库应用的创建及MASTAPP介绍(二)[3]

DELPHI基础教程:简单数据库应用的创建及MASTAPP介绍(二)[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我

知识大全 创建一个三层的数据库应用程序

概论    本文将介绍如何创建一个三层应用程序并且将介绍如何创建一个WebService服务    ADONET创建Wi