数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

SQL编程(一)


发布日期:2019年04月01日
 
SQL编程(一)


SQL语言作为关系数据库管理系统中的一种通用的结构查询语言 已经被众多的数据库管理系统所采用如ORACLESybaseInformix等数据库管理系统它们都支持SQL 语言Delphi与使用SQL语言的数据库管理系统兼容在使用Delphi开发数据库应用程序时我们可以使用SQL语言编程支持SQL编程是Delphi的一个重要特征这也是体现Delphi作为一个强大的数据库应用开发工具的一个重要标志

SQL语言简介

SQL的历史

年代初EECodd首先提出了关系模型年代中期IBM公司在研制 SYSTEM R关系数据库管理系统中研制了SQL语言最早的SQL语言(叫SEQUEL)是在 月的IBM Journal of R&D上公布的年ORACLE公司首先提供商用的SQLIBM公司在DB 和SQL/DS数据库系统中也实现了SQL

美国ANSI采用SQL作为关系数据库管理系统的标准语言(ANSI X )后为国际标准化组织(ISO)采纳为国际标准美国ANSI采纳在ANSI X报告中定义的关系数据库管理系统的SQL标准语言称为ANSI SQL 该标准替代ANSI X版本该标准为下列组织所采纳

● 国际标准化组织(ISO)为ISO 报告Database Language SQL With Integrity Enhancement

● 美国联邦政府发布在The Federal Information Processing Standard Publication(FIPS PUB)

目前所有主要的关系数据库管理系统支持某些形式的SQL语言 大部分数据库打算遵守ANSI SQL标准

SQL的优点

SQL广泛地被采用正说明了它的优点它使全部用户包括应用程序员DBA管理员和终端用户受益非浅

() 非过程化语言

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

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

() 统一的语言

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

SQL为许多任务提供了命令包括

● 查询数据

● 在表中插入修改和删除记录

● 建立修改和删除数据对象

● 控制对数据和数据对象的存取

● 保证数据库一致性和完整性

以前的数据库管理系统为上述各类操作提供单独的语言而SQL 将全部任务统一在一种语言中

() 是所有关系数据库的公共语言

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

TQuery部件在SQL编程中的运用

在Delphi中是通过TQuery部件来实现对SQL语言支持的也就是说用Delphi 开发数据库应用程序时使用SQL语言操作数据库中的数据的唯一途径是经过TQuery部件 TQuery部件在Delphi中使用SQL语言编程时占居着绝对重要的地位在使用Delphi 开发的数据库应用中可以使用SQL语言访问下列三个方面的数据库

● Paradox或dBASE数据库中的表

在访问这些桌面数据库系统中的数据时只能使用ANSI标准的SQL语言中的部分SQL 语句它们主要包括SelectInsertUpdate和Delete语句即本地SQL语句有关详细情况请参见附录局部SQL语句的使用

● 本地InterBase数据库服务器中的数据库

在InterBase数据库中支持的SQL语句 在Delphi中都可以使用有关InterBase中SQL语句的语法和限制请参看InterBase的语言参考

● 远程数据库服务器中的数据库

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

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

TQuery部件的使

上一篇:基于M—BUS的趣低功耗数据采集系统

下一篇:SQL Server 2008 数据库镜像部署实例之一 数据库准备