1、第8章 电子商务数据库技术,目 录,8.1 数据库概述 8.2 数据库设计方法 8.3 Acess数据库 8.4 SQL基础,8.1数据库概述,8.1.1数据库的概念 8.1.2关系数据库 8.1.3数据库常用对象,8.1.1数据库的概念,1.数据库技术的产生与发展 2.数据库的常用术语 (1)数据(Data) (2)数据库(DB,即Database) (3)数据库管理系统(DBMS,即Database Management System) (4)数据库系统(DBS,即Database System),8.1.2关系数据库,1. 数据模型(DM,即Data Model):数据模型是对现实世界的
2、模拟,是一种用来抽象、表示和处理现实世界中的数据信息的工具。 2.关系模型:关系模型把世界看作是由实体(Entity)和联系(Relationship)构成的。 (1)实体 (2)联系 3.关系数据库的重要概念 (1)关键字(Key) (2)数据完整性(Data Integrity),8.1.3数据库常用对象,数据库对象是数据库的组成部分,常见的有以下几种: 1.表(Table) 数据库中的表与我们日常生活中使用的表格类似,它也是由行(Row)和列(Column)组成的。 2.索引(Index) 索引是根据指定的数据库表列建立起来的顺序。它提供了快速访问数据的途径,并且可监督表的数据,使其索引
3、所指向的列中的数据不重复。 3.视图(View) 视图看上去同表似乎一模一样,具有一组命名的字段和数据项,但它其实是一个虚拟的表,在数据库中并不实际存在。,8.2数据库设计方法,8.2.1数据库的设计规则 8.2.2数据库的设计内容 8.2.3数据库的设计过程 8.2.4数据库的概念设计,8.2.1数据库的设计规则,设计数据库必须遵循一定的规则。在关系数据库中,这种规则就是范式(Normal Form)。范式是符合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求,即满足不同的范式。 目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、第四范式(
4、4NF)、第五范式(5NF)和第六范式(6NF)。满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多要求的称为第二范式(2NF),其余范式以此类推。一般说来,数据库只需满足第三范式(3NF)就行了。,8.2.2数据库的设计内容,数据库设计通常包含两方面的内容:结构(数据)设计和行为(处理)设计。 (1)结构(数据)设 结构(数据)设计是指数据库的总体概念设计,即设计数据库的框架或数据库的结构。设计出具有最小数据冗余、能反映不同用户数据需求、实现数据共享的系统是结构(数据)设计的目标。结构(数据)设计出的系统一旦形成,轻易不作改动,因此,结构(数据)设计是数据库设计的关键。
5、但结构(数据)设计需要留有数据扩充的余地,便于系统升级。,(2)行为(处理)设计 行为(处理)设计是指设计与数据库相关的应用程序、事务处理等数据库程序。用户通过数据库程序访问、操作数据库。因而,行为(处理)设计与用户的业务活动息息相关,是一个动态渐进的过程。,8.2.3 数据库的设计过程,(1)需求分析 (2)概念设计 (3)逻辑设计 (4)物理设计,8.2.4 数据库的概念设计,在通过系统功能分析以后,将这些需求抽象为信息世界的结构,也就是实体联系分析。采用 E-R(Entity-Relationship)模型来建立各子系统信息结构,最后进行汇总。E-R模型,即实体联系数据模型 (Entit
6、y-RelationshipDataModel),于1976年由P.P.S.Chen提出,是用E-R图来描述现实世界的概念模型。E-R模型建立了一个统一的数据模型,概括了层次、网状和关系三种传统数据模型,以比较自然的方式模拟现实世界,并可以作为三种传统模型相互之间转换的中间模型。,8.3 Acess数据库,8.3.1常用数据库系统简介 8.3.2Acess数据库系统,8.3.1常用数据库系统简介,数据库的物理实现要依赖于数据库管理系统(DBMS),目前广泛使用的数据库系统不少,下面对其中最常见的几种做些概要介绍。 DB2 SQL Server ORACLE ACCESS,8.3.2Acess数
7、据库系统,1Access数据库功能与特点 Access数据库具有三个基本功能:建立数据库、数据库操作、数据通讯。Access是关系型数据库的一种,因此具有表的特性。在Access数据库中,包括表、查询、窗体、报表、页、宏和模块七个对象,这些对象用于收集、存储和操作各种不同的信息。每个对象都是数据库的一个组成部分,其中表是数据库的基础,它记录着数据库的全部数据内容,其他对象是Access提供的工具,用于对数据库进行维护和管理。,2.Access表 (1)表的创建 (2)常用数据类型 (3)表的操作 (4)数据字段的操作,8.4 SQL基础,8.4.1SQL概述 8.4.2SQL语言常用语句,8.
8、4.1SQL概述,1.SQL包含通常包括4个部分 数据操纵语言(DML-Data Manipulation Language)INSERT,UPDATE,DELETE 数据查询语言(DQL-Data Query Language)SELECT 数据定义语言(DDL-Data Definition Language)CREATE,ALTER,DROP 数据控制语言(DCL-Data Control Language)COMMITWORK,ROLLBACKWORK,2.SQL的优点 (1)非过程化语言 (2)统一的语言 (3)是所有关系数据库的公共语言,8.4.2 SQL语言常用语句,1.资料定义
9、DDL(Data Definition Language) (1)建表格 (2)更改表格 (3)建立索引 (4)删除 (5)视图的建立与撤销,2数据查询语言(DQL) (1)单表查询 (2)多表连接查询 (3)分组查询,3.数据定义语言DDL (1)INSERT语句 (2)DELETE语句 (3)UPDATE语句 (4)数据控制语言DCL,8.5 ADO与ODBC,8.5.1 ASP访问数据库的几种方式 8.5.2 ODBC简介 8.5.3 ADO对象简介 8.5.4 Connection对象 8.5.5 Command对象 8.5.6 Recordset对象 8.5.7 Field对象与Fi
10、elds数据集合,8.5.1 ASP访问数据库的几种方式,在ASP脚本中一般可以通过CGI,IDC或者ADO等方式访问数据库。Web浏览器用HTTP协议向Internet信息服务器(IIS)递交请求。Internet信息服务器执行访问数据库的操作,并以一个HTML格式的文档作为回答。,8.5.2 ODBC简介,ODBC(Open Database Connectivity,开放数据库互连)是由Microsoft公司于1991年提出的一个用于访问数据库的统一界面标准,是应用程序和数据库系统之间的中间件。 从结构上分,ODBC分为单束式和多束式两类。 一个完整的ODBC由下列几个部件组成: 应用用
11、程序(Application)ODBC管理器(Administrator)。该程序位于windows服务器控制面板(Contro Panel)的32位ODBC内,其主要任务是管理安装的ODBC驱动程序和管理数据源。,驱动程序管理器(Driver Manager)驱动程序管理器包含在ODBC32.DLL中,对用户是透明的。其任务是管理ODBC驱动程序,是ODBC中最重要的部件。 ODBC API ODBC驱动程序是一些DLL,提供了ODBC和数据库之间的接口。 数据源数据源包含了数据库位置和数据库类型等信息,实际上是一种数据连接的抽象。,8.5.3 ADO对象简介,ADO对象组件主要提供了7种对
12、象和4种集合供程序设计师使用 。 Connection对象:负责创建一个ASP脚本与指定数据库的连接。在对某个数据库进行各种操作之前,首先需要与该数据库建立连接。 Command对象:负责对数据库提出操作请求,通常是传递和执行指定的SQL命令。该对象的执行结果将返回一个Recordset记录集。 Parameter对象与Parameters集合:负责传递Command对象在执行时所需的SQL命令参数。,Recordset对象:用来保存和表示从数据库中取得的记录集合,并允许访问者进一步对其中的记录和字段进行各种操作。 Field对象与Fields集合:表示Recordset对象指定的数据字段,每
13、个Field对象对应于Recordset对象中的一列。 Property对象与Properties集合:提供有关的属性值,供Connection对象、Command对象、Recordset对象或Field对象使用。 Error对象与Errors集合:提供连接或访问数据库时发生的错误信息,每当发生错误时,一个或多个Error对象将出现在Connection对象的Errors集合中。,8.5.4 Connection对象,ADO组件中的Connection对象负责与数据库实际的连接动作,其他所有对象都必须依赖该对象实现的连接才能发挥其各自的功能。 1.Connection对象的方法 (1)Open
14、方法 (2)Execute方法 (3)Close方法 (4)BeginTrans方法 (5)CommitTrans方法 (6)RollbackTrans方法,2.Connection对象的属性 (1)ConnectionTimeout属性 (2)CommandTimeout属性 (3)Provider属性 (4)Mode属性,8.5.5 Command对象,1. Command对象概述 Command对象负责对数据库提供操作请求,即负责发出指定的SQL命令。使用Command对象可以查询数据库并返回Recordset对象中的记录。 2. Command对象的属性 (1)ActiveConnec
15、tion属性 (2)CommandText属性 (3)CommandType属性 (4)CommandTimeout属性,8.5.6 Recordset对象,1.Recordset对象的方法 (1)Recordset对象的Open方法 (2) Recordset对象的其他方法,(3) Recordset对象的属性 1BOF属性 2EOF属性 3RecordCount属性 4MaxRecords属性 5PageSize属性 6PageCount属性 7AbsolutePage属性 8CursorType属性 9LockType属性,8.5.7 Field对象与Fields数据集合,1Field数
16、据集合常用属性 2Field数据集合的应用,8.6 数据库技术与电子商务,8.6.1 数据的收集、存储和组织 8.6.2 决策支持和对EDI的支持 8.6.3 Web数据库对电子商务的支持 8.6.4 数据库技术和电子商务的发展,8.6 数据库技术与电子商务,8.6 数据库技术与电子商务,电子商务中所涉及的数据库技术如图,图8-6 电子商务与数据库技术,8.6.1 数据的收集、存储和组织,数据库技术是数据管理技术。其主要目标是解决数据管理中数据的存储、访问、处理等问题。因此数据库技术主要用于信息管理应用领域,如基层部门的事务处理、企业管理信息系统等,这也是传统的数据库的主要功能。对于参与电子商
17、务而言,数据的来源不仅仅是企业内部管理信息系统,还包括大量的外部数据。 在电子商务环境下,数据是企业的生命线,是决策的依据,是进行各类生产经营活动的基础及结果。在电子商务环境下,要区别对企业重要的与琐碎的、正确的与谬误的信息越来越难,这就使得数据的收集、组织和存储技术对电子商务的发展变得更加重要。,8.6.2决策支持和对EDI的支持,EDI系统模型,图8-7 EDI系统模型,8.6.3 Web数据库对电子商务的支持,web数据库是电子商务的核心技术它能将数据库技术与web技术很好地融合在一起,使数据库系统成为web的重要组成部分,实现数据库与网络技术的有机结合。web数据库在发展过程中经历了非结构化数据库和异构数据库系统等历程,这种技求的升级给电子商务系统带来了有力的支持。,8.6.4 数据库技术和电子商务的发展,1并发控制和持续可用性 2海量存储数据技术 3实时处理、大规模的决策支持 4. 数据可视化技术 5 移动计算,实践训练 商务网站的数据库设计,【实训目的】 1.了解常用网站数据库。 2.掌握网站数据序的访问技术。 3.掌握网站数据库的设计。【实训任务】 1在计算机上安装IIS服务,并成功进行网站连接配置。 2设计一个带数据库的简单动态网站。 3进行对记录集的新建、修改、合并与复制操作。,