您好、欢迎来到现金彩票网!
当前位置:如意彩票 > 非过程语言 >

66 TQuery组件

发布时间:2019-04-25 05:44 来源:未知 编辑:admin

  SQL语言作为关系数据库管理系统中的一种通用的结构查询语言,已经被众多的数据库管理系统所采用,如ORACLE、Sybase、Informix等数据库管理系统,它们都支持SQL 语言。Delphi与使用SQL语言的数据库管理系统兼容,在使用Delphi开发数据库应用程序时,可以使用SQL语言编程。

  SQL广泛地被采用正说明了它的优点。它使全部用户,包括应用程序员、DBA管理员和终端用户受益匪浅。(1)非过程化语言

  SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集。所有SQL 语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。

  SQL不要求用户指定对数据的存放方法。这种特性使用户更易集中精力于要得到的结果。所有SQL语句都使用查询优化器,查询优化器是RDBMS的一部分,由它决定对指定数据存取的最快速度的手段。查询优化器知道存在什么索引,哪儿使用合适,而用户从不需要知道表是否有索引,表有什么类型的索引。(2)统一的语言

  SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、应用程序员、决策支持系统人员及许多其他类型的终端用户。基本的SQL 命令只需很少时间就能学会,最高级的命令在几天内便可掌握。

  以前的数据库管理系统为上述各类操作提供单独的语言,而SQL 将全部任务统一在一种语言中。(3)是所有关系数据库的公共语言

  由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS转到另一个。所有用SQL编写的程序都是可以移植的。2. TQuery组件在SQL编程中的运用

  在Delphi中,是通过TQuery组件来实现对SQL语言的支持,也就是说用Delphi 开发数据库应用程序时,使用SQL语言操作数据库中的数据的惟一途径是通过TQuery组件。 TQuery组件在Delphi中使用SQL语言编程时占据着绝对重要的地位。

  在使用Delphi开发的数据库应用程序中,可以使用SQL语言访问下列3类数据库:(1)Paradox或dBASE数据库中的表

  在访问这些桌面数据库系统中的数据时,只能使用ANSI标准的SQL语言中的部分SQL语句,它们主要包括Select,Insert,Update和Delete语句,即本地SQL语句。(2)本地InterBase数据库服务器中的数据库

  在InterBase数据库中支持的SQL语句,在Delphi中都可以使用。(3)远程数据库服务器中的数据库

  当然这要求在Delphi中必须安装相应的SQL Link。只要是数据库服务器上的DBMS支持的SQL语句,在Delphi中都可以使用。有关语法及限制请参看相关的数据库管理系统的文档。

  值得一提的是,Delphi还支持异构查询,即可以同时查询多个数据库服务器中相同或不同类型的数据库表。例如查询的数据可以是来自ORACLE数据库中的表和Sybase数据库中的表,或者其他多个数据库中的表。

  TQuery组件是一个数据集组件,它在Delphi组件面板的Borland数据库引擎上。它与TTable组件具有很多共同的属性,TQuery组件在SQL编程中占据了十分重要的地位,实现了Delphi对SQL语言的支持。在Delphi开发的数据库应用程序中,SQL语句通过TQuery组件传递到要访问的数据库系统的数据库引擎中,由数据库引擎具体执行SQL语句,以实现对数据的操作,而不是传递给Delphi中的BDE。

  我们已经知道了TTable组件在访问数据库时具备很强大的功能。TTable组件通过Delphi内置的BDE可以实现对各种数据库系统的访问,然而TQuery组件提供了一些 TTable组件不具备的功能,它们是:

  因为TTable组件不能使用SQL语言,而TQuery组件可以使用SQL语言,因而TQuery组件也就具备了强大的关系查询能力。当然这也使数据库应用程序本身变得更复杂了。2. 编写SQL语句

  在Delphi应用程序中编写和使用的SQL语句有两种,即静态SQL语句和动态SQL语句。

  静态方式是把SQL命令文作为TQuery组件的SQL属性值进行设置,这样,当执行应用程序时,Delphi便执行TQuery组件SQL属性中设置的SQL命令。如果是SQL中的查询命令,则把TQuery组件通过TDataSource组件与数据控制组件相连,查询的结果将会显示在与TQuery组件相连接的数据控制组件中。动态SQL语句是指SQL语句中包含一些参数变量,在程序中可以为这些参数赋值,在程序运行过程中,各个参数值是变化的。

  TQuery组件的SQL 属性中的SQL语句的编写也有两种方法,一种是在程序设置阶段便将相应的SQL语句写入到TQuery的SQL属性中,另一种是Delphi开发的应用程序将SQL语句包含在Pascal代码单元中。

  为TQuery组件设置DatabaseName属性,它可以是用BDE建立的数据库的别名,或桌面数据库系统中的目录名或数据库服务器中的文件名。如果在应用中使用了TDatabase 组件,那么TQuery的DatabaseName属性可以是TDatabase组件中定义的一个数据库别名。

  为TQuery组件设置SQL属性,TQuery组件的SQL属性值就是应用程序要执行的SQL 命令文本。

  在程序设计过程中,我们可以通过对象查看器设置SQL属性。在Object Inspector中选择SQL属性,这样会打开String List Editor窗口,如图6.16所示,在其中便可以编写SQL命令。另外还可以打开Visual Query Builder来编写SQL命令(只有Delphi的客户/服务器版本才有这一工具)。

  在程序运行过程中,首先调用TQuery组件的Close方法关闭当前的TQuery组件,然后调用Clear方法清除SQL属性,并说明新的SQL命令文本,最后调用Add方法,将新的SQL命令行加入到SQL属性中。

http://mj-sports.net/feiguochengyuyan/62.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有