资源预览内容
第1页 / 共38页
第2页 / 共38页
第3页 / 共38页
第4页 / 共38页
第5页 / 共38页
第6页 / 共38页
第7页 / 共38页
第8页 / 共38页
第9页 / 共38页
第10页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第2章 数据库基础 What is a database?1Web数据库设计与开发数据库概述 数据库就是为了实现一定目的而 按某种规则和方法组织起来的数据的集 合,在我们的生活中数据库的应用是随 处可见。 2Web数据库设计与开发数据库概述数据库的产生和发展方向 自20世纪50年代中期开始,计算机的应用已不仅 仅局限于科学研究领域,应用计算机进行数据处 理很快上升为计算机应用的重要方面。到了20世 纪60年代,由于计算机硬件技术的发展,尤其是 辅助存储器容量的增大,使计算机用于管理的规 模更加庞大,数据量急剧增加,为了提高效率, 人们提出了“数据库”的概念。3Web数据库设计与开发数据库概述数据库的产生和发展方向 20世纪70年代流行的网状、层次数据库称为第一 代数据库系统 。 随着微机的出现和普及以及计算网络的广泛使用 ,分布式处理系统在20世纪80年代得到了很大发 展 。 进入21世纪以来,人们对于数据库信息的实时需 求越来越强烈 ,推动了数据库技术新一轮的研究 。 4Web数据库设计与开发数据库概述数据库的产生和发展方向 研究的方向主要有两个: 一是改造和扩充关系数据库,以适应新的应用要求; 二是改用新的数据模型。 新的数据库技术 : 并行数据库技术 分布式数据库系统 (DDS:Distributed Database System) 数据仓库、数据采掘技术 多媒体数据库 模糊数据库 网络数据库 5Web数据库设计与开发关系数据库表的基本结构 数据库 (DB) 数据库(Database,简称DB)是存放数据的“仓库” ,只不过这个仓库建立在计算机存储设备上,比 如硬盘、软盘等。并且数据库中的数据必须是按 一定的格式存放的,以便于查询和存取。严格而 言,所谓数据库是长期存储在计算机内的、有组 织的、可共享的数据集合。数据库中的数据按一 定数据模型组织、描述和存储,具有最小冗余、 较高的数据独立性和易扩展性,并可为各种用户 共享。 6Web数据库设计与开发关系数据库表的基本结构 数据库管理系统 (DBMS) 它们位于用户与操作系统之间,是建立在操作系 统的基础上,对数据库进行统一管理和控制。 主要功能 : 数据定义 数据操作 数据库的运行管理 数据库的建立和维护功能 数据库管理系统是数据库系统的一个重要组成部 分 7Web数据库设计与开发关系数据库表的基本结构 数据库系统(DBS) 数据库系统(Database System,简称DBS)是指在计 算机系统之中引入数据库后的系统,一般由数据 库、数据库管理系统(及其开发工具)、应用系统、 数据库管理员和用户构成。8Web数据库设计与开发关系数据库表的基本结构 关系数据库系统(RDBS) 依照数据库中数据的组织方式来区分,数据库管 理系统可分为层次型、网状型和关系型 。 关系型数据库管理系统(Relational Database Management System,简称RDBMS)。 关系数据库具有概念简单清晰、容易使用的特点 ,它以表(也称关系)来表示数据与数据之间的 联系的,数据的逻辑关系是一张二维表。 9Web数据库设计与开发关系数据库表的基本结构 关系数据库中的重要概念 表 表(Table)是按某一公共结构存储的一组相似数据,它是数据库 的基础构件,是一种数据库对象,具有直观、方便和简单的特点 。表用于存储数据,它以行、列方式组织,是关系数据库的基本 元素。 记录 记录(Record)指表中的一行,在通常情况下,记录和行的意思 是相同的。 字段 字段(Field)是表中的一列,在通常情况下,字段和列所指的内 容是相同的。 10Web数据库设计与开发关系数据库表的基本结构关系数据库中的重要概念 主键和外键: 主键(Key)也称关键字段,是表中某个或多个字段。 主键用来惟一标识表中的一条记录,它是惟一的。 如果数据表中的一个或多个字段不能惟一标识该表的 记录(即不是该表的主键),但这个(组)字段却是数 据库中其他数据表的主键,即通过这个(组)字段可以 建立数据库中这两个数据表之间的联系。此时这组字段 称为数据表的外键。 11Web数据库设计与开发关系数据库表的基本结构关系数据库中的重要概念 关系: 关系(Relation)是一个从数学中来的概念,在关系代数中,关系 是指二维表,表既可以用来表示数据,也可以用来表示数据之间 的联系。 关系可以分为一对一关系、一对多关系、多对多关系三种情况。 索引: 为了更快地访问数据,提高数据的检索速度,大多数数据库都使 用单个字段或字段的组合对表进行索引(Index)。 视图: 视图(View)是一个与基本表(视图建立在基本表上的)相同的 虚拟表,用于限制用户可以看到和修改的数据量,从而简化数据 的表达。 12Web数据库设计与开发关系数据库表的基本结构关系数据库中的重要概念 触发器 触发器(Trigger)是在用户要对表中的数据进行插入 、删除或修改的时候被触发执行的一段程序。 存储过程 存储过程(Stored Procedures)非常类似于DOS操作 系统的BAT(批处理)文件。 13Web数据库设计与开发数据库系统组成与数据库设计 数据库系统组成 数据库文件 数据库管理系统 支持数据库系统的硬件和软件 系统人员和用户 14Web数据库设计与开发数据库系统组成与数据库设计 数据库设计的六个阶段 需求分析 概念结构设计 逻辑结构设计 物理结构设计 数据库实施 数据库运行和维护 15Web数据库设计与开发结构化查询语言 什么是SQL SQL的全称为Structured Query Language,即结 构化查询语言。 SQL的主要特点 综合统一 高度非过程化 语言简捷,易学易用 兼容性和可移植性 16Web数据库设计与开发结构化查询语言 SQL的功能 数据定义功能(Data Definition) 数据操纵功能(Data Manipulation) 数据控制功能(Data Control) SQL语言可完成以下主要任务 修改数据库的结构 改变系统的安全性设置 增加用户访问数据库或表的许可 查询数据库的信息 更新数据库的内容 17Web数据库设计与开发SQL语句的构成 1 数据定义语句 CREATE:创建新的表、字段和索引。 DROP:删除数据库中的表和索引。 ALTER:通过添加字段或改变字段定义来修改表。 2 数据操纵语句 SELECT:在数据库中查找满足特定条件的记录。 INSERT:在数据库中插入新的记录。 UPDATA:更新数据库中的记录和字段。 DELETE:从数据库中删除记录。18Web数据库设计与开发SQL语句的构成 3 数据控制语句 GRANT:对数据库用户授与某种权限。 REVOVE:收回数据库用户的某种权限。 DENY:拒绝用户访问数据库的某一对象。 4 SQL子句 WHERE:指定选择记录时要满足的条件。 GROUP BY:将选择的记录分组。 HAVING:指定分组的条件。 ORDER BY:按特定的顺序排序记录。 5 SQL运算符和计算函数 SQL运算符分为两类:逻辑运算符和比较运算符。 19Web数据库设计与开发常用的SQL语句 数据定义语言DDL 创建表语句CREATE TABLE 语法格式:CREATE TABLE 数据库名 表名(字段名1 数据类型 NOT NULL,字段名2 数据类型 NOT NULL,); 功能:建立一个给定字段的数据表。 删除表语句 DROP TABLE 语法格式:DROP TABLE 表名; 功能:删除一个数据表。20Web数据库设计与开发常用的SQL语句数据定义语言DDL 创建索引语句 CREATE INDEX 语法格式:CREATE UNIQUE CLUSTERED|NONCLUSTERED INDEX 索引名ON 表名 (字段名1,字段名2,); 功能:创建数据表的索引。数据库中按存储结构的不 同将索引分为两类:聚簇索引和非簇索引。 创建、删除视图语句CREATE VIEW和DROP VIEW 21Web数据库设计与开发常用的SQL语句数据查询语言 SELECT语句的完整语法格式: SELECT ALL|DISTINCT 列表名 INTO 外表名 FROM 表名或视图名 WHERE查询限定条件 GROUP BY分组列名 HAVING 分组查询限定条件 ORDER_BY 排序列名ASC|DESC; 22Web数据库设计与开发常用的SQL语句数据查询语言 例2-4:查询所有年龄在20岁以下的学生姓名及 其年龄 SELECT sname,sageFROM studentWHERE sage 20;23Web数据库设计与开发常用的SQL语句数据查询语言 SQL允许嵌套查询 例2-5查询与“李军”在同一个班学习的学生 SELECT sno,sname,sclassFROM student WHERE sclass IN(SELECT sclassFROM studentWHERE sname=李军); 24Web数据库设计与开发常用的SQL语句数据操纵语言 插入数据(INSERT) 插入单个记录的INSERT语法格式: INSERT INTO 表名 (字段1 ,字段2 ) VALUES (常量1 ,常量2); 插入子查询结果的INSERT语法格式: INSERT INTO 表名 ( 字段1 ,字段2)25Web数据库设计与开发常用的SQL语句数据操纵语言 插入数据(INSERT) 插入子查询的例子:对每个班,求学生的平均年 龄,并把结果存入数据库。(假设在数据库中有表名为 Deptage的表,其中一列为班名sclass,另一列为学生平 均年龄avgage) INSERTINTO Deptage(slass,avgage)SELECT sclass,avg(sage)FROM studentGROUP BY sclass;26Web数据库设计与开发常用的SQL语句数据操纵语言 修改数据(UPDATE) 语法格式: UPDATE 表名 SET 列名=表达式 ,列名=表达式 WHERE 条件; 功能:修改指定表中满足WHERE子句条件的记 录。27Web数据库设计与开发常用的SQL语句数据操纵语言 删除数据(DELETE) 语法格式: DELETE FROM 表名 WHERE 条件; 功能:从指定表中删除满足WHERE子句条件的 所有记录。28Web数据库设计与开发常用的SQL语句数据控制语言 授权(GRANT) 语法格式: GRANT 权限 ,权限 ON 对象类型 对象名 TO 用户 ,用户 WITH GRANT OPTION; 功能:对指定操作对象的指定操作权限授予指定 的用户。 29Web数据库设计与开发常用的SQL语句数据控制语言 收回权限(REVOKE) 语法格式: REVOKE权限 ,权限 ON 对象类型 对象名 FROM 用户,用户 ;30Web数据库设计与开发Web数据库 Web数据库 (也称网络数据库),就是指把数 据库技术引入到Internet的Web系统中,借助于 Web技术将存储于数据库中的
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号