文档介绍:本章要点:
Query组件的属性
Query组件的方法
SQL语言基础
Query组件利用SQL语言的增、删、改、查操作
综合实例:学生信息管理程序
第12章 SQL数据库程序设计
Query组件的属性和方法
SQL语言,又称为结构化查询语言,它在数据库程序设计中是十分重要的。任何一门支持数据库程序设计的语言必定提供对SQL语言的支持,Delphi 。在Delphi ,Query组件就是其中之一。Query组件是BDE数据集组件之一,在Delphi ,与Table组件具有很多共同的特性。第11章已经对Table 组件的使用较详细地进行了介绍。 Query 组件在 SQL 编程中占据十分重要的地位,实现了Delphi 。在Delphi ,SQL语句是通过Query部件传递到要访问的数据库系统的数据库引擎中,由数据库引擎具体执行SQL语句,以实现对数据的操作。而不是传递给Delphi ,由BDE实施具体的SQL动作。本章内容重点讲解如何用Query组件来进行SQL语言的操作。
Query组件的常用属性(1)
1. DataBaseName属性
跟Table组件一样,Query组件也是通过DataBaseName属性来链接数据库的。可以是某个数据库别名也可以是某个数据表的路径。详细方法可以参照Table组件的用法。
2. SQL属性
Query组件是通过SQL属性对数据集进行操作,而不是通过指定一个TableName属性的值直接指向一个表。SQL是一个字符串对象,可以给该属性设置SQL语句,从而让Query组件使用SQL语句操纵数据库。例如,在SQL属性中输入了合法的Select查询语句,然后可以将Query组件的Active属性设置为True或者调用Open方法就可以打开数据集。SQL属性还提供了设置SQL语句的各种方法,如Add、Clear等方法分别用来添加和清除SQL语句,在程序中运用十分广泛。
3. Filter属性
该属性是用来过滤记录的,就是按照某个字段的具体值进行过滤记录。它有点类似于查询,也称为筛选记录。具体格式如下:
:= '字段名=字段值'
或者可以直接在对象浏览器中找到Filter属性,并输入“性别= '男' ”,注意不
Query组件的常用属性(2)
带双引号,但过滤字段值“男”字必须用单引号括起来。但在代码中,要用两个连续的单引号表示一个单引号。
另外,要让Filter属性设置的过滤条件有效,则必须设置另外一个属性Filtered。只有当Filtered属性值为True时,Filter属性设置才有效。
其实,在Table组件中也包含了Filter和Filtered属性。所以,Table组件和Query组件的很多属性都是相同的,而且用法也一样,如Active、Fields等,可以参考Table组件中的相关用法。
Query组件的常用方法
1. Open方法
用于打开或激活Query数据集。一般只执行Select查询语句。
2. ExecSQL方法
执行Query组件中的SQL语句,不仅可以执行Select查询语句,而且可以执行其他的SQL命令,如Insert、Update、Delete等SQL命令。关于Open方法和ExecSQL方法的区别本书将在后面的章节里进一步地加以讨论。
3. Close方法
关闭数据集。
Query组件的常用属性(3)
4. SQL属性的两个基本方法
(1)Add方法
给Query组件的SQL属性添加SQL命令语句,以供Query组件执行。Add是SQL属性中的一个方法。如下列语句:
(‘select * from student’);
(‘ order by 学号’);//在前一句SQL语句的基础上追加SQL语句
这里也可以把以上两句语句合成一句,如下所示。这两种方法是等效的。
(‘select * from student order by 学号’);
(2)Clear方法
Clear方法是清除Query组件的SQL属性值。它也是SQL属性中的一个方法。一般在用Add方法添加SQL语句前,先要用Clear方法将SQL属性清空,然后再添加全新的SQL语句。
Query组件的常用属性(4)
【例12-1】。设计窗体如图12-1所示,程序运行效果如图