al Data Access.OLE DB 是一个低层的数据访问接口,用它可以访问各种数据源,包括传统的关系型数据库,以及电子邮件系统及自定义的商业对象。
ADO 向我们提供了一个熟悉的,高层的对 OLE DB 的 Automation 的封装接口。
对那些熟悉 RAO 的程序员来说,可以把 OLE DB 比作是 ODBC 驱动程序。
如同 RAO对象是 ODBC 驱动程序接口一样,不同的数据源要求它们自己的 OLE DB 提供者OLE DB Provider。
ADO 最重要的三个对象是:Connection Command Recordset。
1 Connection 对象 Connection 对象用于建立与数据库的连接。
通过连接可从应用程序访问数据源。
它保存诸如指针类型连接字符串查询超时连接超时和缺省数据库这样的连接信息。
2 Command 对象 在建立 Connection 后可以发出命令操作数据源。
一般情况下Command 对象可以在数据库中添加删除或更新数据或者在表中进行数据查询。
Command 对象在定义
查询参数或执行一个有输出参数的存储过程时非常有用。
3 Recordset 对象 Recordset 对象只代表一个记录集这个记录集是一个连接的数据库中的表或者是 Command 对象的执行结果返回的记录集。
在 ADO 对象模型中是在行中检查和修改数据的最主要的方法所有对数据的操作几乎都是在 Recordset 对象中完成的。
Record 对象用于指定行移动行、添加、更改、删除记录。
1.4 SQL 语言 SQL 语言是一种介于关系代数与关系演算之间的结构化查询语言,其功能不仅仅是查询。
SQL 是一个通用的、功能极强的关系数据库语言。
SQL 语言之所以能够为用户和业界所接受,并成为国际标准,是因为它是一个综合的、 SQL 功能极强同时有简单易学的语言。
语言集数据查询(Data Query)、数据操纵 、 (Data Manipulation) 数据定义(Data Definition)和数据控制(DataControl)功能于一体,主要特点包括: (1) 综合统一数据库系统的主要功能是通过数据库支持的数据语言来实现的。
SQL 语言集数据定义语言 DDL、数据操纵语言 DML、数据控制语言 DCL 的功能于一体,语言风格统一,可以独立完成数据库生命周期中的全部活动,包括定义关系模式、建立数据库、插入数据、查询、更新、维护、数据库重构、数据库安全性控制等一系列操作要求,这就为数据库应用系统的开发提供了良好的环境。
用户在数据库系统投入运行后,还可根据需要随时地逐步地修改模式,且并不影响数据库的运行,从而是系统具有良好的可扩展性。
(2)高度非过程化 非关系数据模型的数据操纵语言是面向过程的语言,用其完成某项请求,必须指定存取路径。
而用 SQL 语言进行数据操作,只要提出“做什么”,而无须指明“怎么做”,因此无须了解存取路径,存取路径的选择以及 SQL 语句的操作过程由系统自动完成。
这不但大大减轻了用户负担,而且有利于提高数据独立性。
(3)面向集合的操作方式非关系数据模型采用的是面向记录的操作方式,操作对象是一记录。
例如查询所有平均成绩在 80 分以上的学生姓名,用户必须一条一条地把满足条件的学生记录找出来(通常要说明具体处理过程,即按照哪条路径,如何循环等)。
而 SQL语言采用集合操作方式,不仅操作对象、查找结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。
(4)以同一种语法结构提出两种使用方式 SQL 语言既是自含试语言,又是嵌入式语言。
作为自含式语言,它能够独立地用于联机交互的使用方式,用户可以在终端键盘上直接键入 SQL 命令对数据库进行操作;作为嵌入式语言,SQL 语言能够嵌入到高级语言(例如 C、COBOL、FORTRAN)程序中,供程序员设计程序时使用。
而在两中不同的使用方式下,SQL语言的语法结构基本上是一致的。
这种以统一的语法结构提供两种不同的使用方式的做法,提供了极大的灵活性与方便性。
(5)语言简捷易学易用 SQL 语言功能极强,但由于设计巧妙,语言十分简捷,完成核心功能只使用了 9 个动词:数据查询(SELECT)、数据定义(CREATE,DROP,ALTER)、数据操作(INSERT,UPDATE,DELETE)和数据控制(GRANT,REVOKE)。
SQL 语言接近英语口语,因此容易学习,容易使用。
第二章 眼镜销售管理系统2.1 系统分析 作为一个眼镜销售管理系统,其功能是实现进销存公司或个人企业进销存管理的系统化、规范化和自动化。
本系统主要要完成的功能有: (1)交易管理:包括进货登记、销货登记、退货登记等。
其中进货登记中还包含进货商登记,如过是新的进货厂商,可以直接在此登记入库。
进货和进销存的主要交易都是在此进行。
每次交易(包括进货、销货和退货)都需要对商品名称、生产厂商、商品型号、单价、数量、总金额、交易日期、经手业务员编号等各项记录。
在交易过程中,程序的编写尽可能的方便员工进行交易,比如:进货登记时,如果商品编号相同,则自动添加该商品的其它属性;销货登记时,用户只要输入商品编号,该商品的其它属性即可自动出现。
退货登记时