数据库的体系结构和SQL语言.ppt_第1页
数据库的体系结构和SQL语言.ppt_第2页
数据库的体系结构和SQL语言.ppt_第3页
数据库的体系结构和SQL语言.ppt_第4页
数据库的体系结构和SQL语言.ppt_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、,数据库体系结构 SQL语言 运行环境,第3 讲 数据库的体系结构和SQL语言,下载软件:,Oracle 8.0.5 或 Oracle 8.1.5 Delphi 5.0,ER图转换成关系模式,班级(班号,班主任,系),学生(学号,姓名,性别,班号),外来码,唯一标识实体中每个实例的属性或属性组,M : N,学生(学号,姓名,性别,班号),课程(课号,课名,学分),选课(学号,课号,成绩),成绩,实体集 关系 联系关系:由联系的各实体集主码属性, 以及联系本身的属性组成。,ER图转换成关系模式,学号,课号,ER图转换成关系模式,职工(职工号,姓名,年龄,领导),数据库体系结构,数据库系统各类人员

2、所涉及的数据抽象级别,外模式:描述用户所涉及的数据库部分,限定用户操作范围。 概念模式:描述数据库全部数据的逻辑结构。它表示现实世界中一个组织或部门中数据的性质及其联系的特征。通常由数据库系统提供的模式描述语言DDL定义。 内模式: 描述数据库的物理存储结构。 三级模式结构提供了数据库数据独立性: 数据的物理独立性 数据的逻辑独立性,外模式 概念模式 内模式,数据库的体系结构(三级模式结构),关系数据库语言 SQL(Structure Query Language),SQL语言基础 SQL语言上机环境,ER图转换成关系模式,M : N,学生(学号,姓名,性别,班号),课程(课号,课名,学分),

3、选课(学号,课号,成绩),成绩,SQL语言的特点,非过程化语言 面向集合进行操作,一次处理一个记录集合.,对数据提供自动导航。,SQL语句提供查询优化器,由系统决定对指定数据存取的最佳路径.,关系数据库语言 SQL,关系数据库标准语言 1986年ANSI采用SQL语言作为关系数据库系统的标准语言, 后被国际标准化组织(ISO)采纳为国际标准。 1989年 公布增强完整性特征的SQL89 1992年 公布SQL2标准(C/S体系结构) 随后又 公布SQL3标准(面向对象),关系数据库语言 SQL,结构化查询语言 SQL Structured Query Language 功能:定义(data d

4、efinition),操纵manipulation), 和控制(Control). 基于关系代数和关系演算语言.,SQL与SQL*PLUS, DDL 语言 创建各种各种数据库对象(例如:表,视图,索引) DML语言 (存储数据, 获取数据) INSERT,UPDATE,DELETE,SELECT PL/SQL(transact_sQL) SQL*PLUS环境简介,字符型:CHAR(n)字符数据,长度为n个字符 VARCHAR2(n)变长字符型,数字型:NUMBER(n)数字数据。最大可达105位 NUMBER(m, n)m位数字,其中n位 为小数位,日期型:DATE DDMONYY 例如:17

5、-DEC-85 17-12月-99,长型行码数:LONG RAW 二进制行码数,变长,可达2GB,SQL支持的主要数据类型,SQL支持的运算符 算术运算符:,*,/ 逻辑运算符:与“AND”、或“OR”, 非“NOT” 比较符:,!,=, IN,NOT IN,ANY,ALL,判断是否是集合的成员。 BETWEEN AND 判断列值是否满足指定的区间 LIKE 匹配模式 IS NOT NULL 测试空值等,SQL语言 DDL语言 DML语言 DCL语言 PL/SQL,关系表的定义 关系数据库的主要特点之一就是用表的方式组织数据。表是SQL语言存放数据、查找数据以及更新数据的基本数据结构。在SQL

6、语言中,表有严格的定义,它是一种二维表,对于这种表有如下规定: 1)每一张表都有一个名字,通常称为表名或关系名。表名必须以字母开头,最大长度为30个字符。 2)一张表可以由若干列组成,列名唯一,列名也称作属性名。 3)表中的一行称为一个元组,它相当于一条记录。 4)同一列的数据必须具有相同的数据类型。 5)表中的每一个列值必须是不可分割的基本数据项。 当用户需要新的数据结构或表存放数据时,首先要生成一个表。,数据定义语言DDL,SQL语言建表语句句法: CREATETABLE表名表约束 (列名1数据类型缺省值,列约束 (列名2数据类型缺省值,列约束 列名n数据类型缺省值,列约束 TABLESP

7、ACE表空间名 STORAGE(存贮子句) ENABLE约束名 DISABLE约束名 (注:对于oracle7 n254),基本数据模型的组成部分: 关系的集合 操作的集合 完整性约束的集合,课程(课程号,课程名,学分),选课(学号,课程号,成绩),成绩,ER图转换成关系模式,系,包含,1,N,系(系号,系名,电话),系号,系名,电话,学生 (学号,姓名,性别,出生年月,系号),选课(学号,课程号,成绩) sc(sno , cno , grade),课程(课程号,课程名,学分) course(cno , cname , credit ),系(系号,系名,电话) dep(dno , dname

8、, tel ),学生 (学号,姓名,性别,出生年月,系号) student(sno , sname , sex , birth , dno),SQL语言 建立关系表实例,DDL建立表对象,CREATE TABLE dep (dno char(3), dname char(10), tel char(8) );,CREATE TABLE student (sno number(6), sname char(6), sex char(2), birth date, dno char(3) );,CREATE TABLE course (cno char(8), cname char(10), cr

9、edit number(1) );,DDL建立表对象(续),CREATE TABLE sc (sno number(6), cno char(8), grade number(3) );,DML插入、修改、删除,语法: INSERT INTO 表名(列名1, 列名2, ) VALUES (值1, 值2, );,例如: INSERT INTO student VALUES(980001,李宏,男,01-1月-80,d01),INSERT INTO student(sno, sname) VALUES(980001,李宏);,DML插入、修改、删除,UPDATE dep SET tel=1234

10、WHERE dno= d01 ; UPDATE dep SET tel=1234;,DELETE FROM student WHERE dno= d01 ; DELETE FROM student;,COMMIT; (永久提交对数据库作的修改),数据检索语句,Select,查询数据字典常用命令,Select * from dict;,select * from tab;,desc 表名;,查询语句 无条件查询,查课程名(去掉集合中重复记录): select DISTINCT cname from course ;,基本查询(选取全部列):,指定列标题: select sno student_n

11、o , sname from student ;,查学生学号、姓名、年龄 select sno , sname , trunc(months_between(sysdate,birth) /12+1) from student ;,select * from student;,查询语句 条件查询,select * from student where sname like 王_明 or sname like 张% ;,_ 匹配任意一个字符 % 匹配任意个字符,Select * from student where sex=女 and dno=d01 ;,select * from studen

12、t where birth between01-JAN-80 and 31-DEC-80;,select sno , cno from sc where grade is null ;,select * from student where sname like 王_明 or sname like 张% ;,查询语句 排序,查询选了c01课程的学生信息,查询结果含学号和成绩(成绩高的在前) select sno , grade from sc where cno=c01 order by grade desc ;,查询学生信息,要求输出结果按系、年龄排序 Select * from student order by dno asc , birth desc ;,查询语句 分组、统计,统计课程号为c01课程的最高、最低和平均成绩 select max(grade) , min(grade),avg(grade) from sc where cno=c01 ;,统计函数:count(计数),sum(求和),avg(平均) max(最大),min(最小),统计学生人数 select count(*) from student ;,查询语句 分组、统计,统计各系人数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论