数据库课件第三章

合集下载

《数据库原理与应用》(第三版) 课件 第3章 数据库设计技术

《数据库原理与应用》(第三版) 课件 第3章 数据库设计技术
再分解了)。自顶向下的SA方法是从整个系统开始,采用逐层分解的方式对系统进行
分析的方法。
2023/9/9

3.2需求分析
2.数据流图(data flow diagram)
◆ SA方法只是对问题分析的一种思想,在具体的分析过程中还需要借助其他 的分析工具,这样才能完成对分析过程和结果的记录、对用户需求的表达
系统调研也称项目调研,即把系统开发当作项目来运作,其主要目的是通过接 触用户以了解并最终明确用户的实际需求。这个过程是一个系统分析人员理解
和掌握用户业务流程的过程,是一个需要不断与用户进行沟通和磋商的过程。
系统调研方法比较灵活,因人、因系统而异。大致过程可以分为以下几个步骤
来完成:
2023/9/9
3.2需求分析
第3章数据库设计技术
· 3.1数据库设计概述
·3.2需求分析
· 3.3数据库结构设计 · 3.4数据库的实施、运行和维护
2023/9/9
第三章数据库设计技术
3.1数据库设计概述
◆数据库设计是指在现有的应用环境下,从建立问题的概念模型开始,
逐步建立和优化问题的逻辑模型,最后建立其高效的物理模型,并据 此建立数据库及其应用系统,使之能够有效地收集、存储和管理数据 ,满足用户的各种应用需求。
的。所有这些结果都应该跟用户确认后予以书面形式确定下来。
2023/9/9
3.2需求分析
3.2.2需求分析的方法
1.SA方法
针对数据库设计,形成用户需求的有效表达,这种表达在说明书中多以数据流图、数
据字典等形式来描述。
为建立用户需求的表达,可以采用多种分析方法来完成。这些方法主要包括自顶向下
和自底向上两种方法,其中常采用的方法是自顶向下的结构化分析方法(structured analysis,SA)。

精品课件-数据库原理与应用-第3章

精品课件-数据库原理与应用-第3章

第3章 数据库系统概述
2.信息 信息(Information)和数据密切相关,但又有区别。信息 是指有一定含义的、经过加工(处理)的、对决策有价值的数据。 例如:“王林的语文分数是56分”是一条信息,而“王林”、 “56”、“分”等只是数据。 可以说,信息是有用的数据,数据是信息的表现形式。
第3章 数据库系统概述
1.人工管理阶段 人工管理阶段大约在20世纪50年代中期以前,那时由于 计算机技术相对落后,硬件主要是磁带、卡片、纸带,没有磁 盘等直接存取的存储设备;软件方面也没有操作系统,没有管 理数据的软件,数据不能保存,编写程序时要安排数据的物理 存储,数据是面向程序的,一个应用程序对应一些数据,如图 3-1所示。
束条件。
第3章 数据库系统概述
1. 数据结构 数据结构用于描述系统的静态特性,是所研究的对象类型 的集合。这些对象是数据库的组成成分,它们包括两类:一类 是与数据类型、内容、性质有关的对象,例如关系模型中的域、 属性、关系等;另一类是与数据之间联系有关的对象,例如关 系模型中的关系。 数据结构是刻画一个数据模型性质最重要的方面。因此在 数据库系统中,人们通常按照其数据结构的类型来命名数据模 型。例如,层次结构、网状结构和关系结构的数据模型分别命 名为层次模型、网状模型和关系模型。
第3章 数据库系统概述
(3) 数据库管理员(DBA,Database Administrator)。 DBA的职能是对数据库进行日常的管理,负责全面管理和控制 数据库系统。数据库管理员的素质在一定程度上决定了数据库 应用的水平,所以他们是数据库系统中最重要的人员。数据库 管理员的主要职责包括:设计与定义数据库系统;帮助最终用 户使用数据库系统;监督与控制数据库系统的使用和运行;改 进和重组数据库系统,优化数据库系统的性能;备份与恢复数 据库;当用户的应用需求增加或改变时,DBA需要对数据库进 行较大的改造,即重新构造数据库。

数据库技术 课件 第三章-3

数据库技术 课件 第三章-3

–创建索引的原则
• 在经常用来检索的列上创建索引(如经常在where子 句中出现的列)。 •在表的主键、外键上创建索引。 •在经常用于表间连接的字段上建立索引。 •一般而言,如下情况的列不考虑在其上创建索引:
– 在查询中几乎不涉及的列。 – 很少有唯一值的列(即包含太多重复值的列,如性别字 段)。 – 数据类型为text、ntext或image的列。 – 只有较少行数的表没有必要创建索引。 – 当写的性能比查询更重要时,应少建或不建索引。
第三章 关系数据库标准语言 — SQL(结构化查询语言)
第一节 SQL概述 第二节 SQL数据查询功能 第三节 SQL数据定义功能 第四节 SQL数据更新功能
信息工程学院 数据库系统原理
SQL的三级模式结构
SQL终端用户 视图1 视图2
子模式 基本表1 概念模式 存储模式 存储文件1
外模式 模式 内模式
视图创建后,只在数据字典中存放视图的定义,而其中的子查询SELECT 语句并不执行。 只有当用户对视图进行操作时,才按照视图的定义将数据从基本表中取 出。
信息工程学院 数据库系统原理
CREATE VIEW <视图名>[(<视图列表>)] AS <子查询>
在下面情况下视图列表不可省略: 1.视图由多个基本表连接得到,在不同的表中存在 同名属性列,或定义新的属性列名时,则需指定列 名; 2.当视图的列名为表达式或集函数的计算结果时, 而不是单纯的属性列名时,则需指明列名。
主关键字 (学号) 870701 870705 870707 870712 870721 870724 870736 记录地 址 D G C A F B E
数据文件
非聚簇索引

数据库系统概论课件第三章

数据库系统概论课件第三章

整理ppt
24
3.4.3 删除数据
DELETE FROM <表名> [WHERE <条件>]; – 功能
删除指定表中满足WHERE子句条件的元组
– WHERE子句
指定要删除的元组 缺省表示要修改表中的所有元组
整理ppt
25
删除数据(续)
三种删除方式
删除某一个元组的值 删除多个元组的值 带子查询的删除语句
AS <子查询> [WITH CHECK OPTION];
整理ppt
36
建立视图(续)
DBMS执行CREATE VIEW语句时只是把 视图的定义存入数据字典,并不执行其中 的SELECT语句。在对视图查询时,按视图
的定义从基本表中将数据查出。
整理ppt
37
组成视图的属性列名
全部省略或全部指定 省略:

整理ppt
13
3.向新表中插入数据
使用select语句: 格式-- Select <列名列表> [ Where <条件>
… ]
into <新表名>
整理ppt
14
3.4 数 据 更 新
3.4.1 插入数据 3.4.2 修改数据 3.4.3 删除数据
整理ppt
15
3.4.2 修改数据
语句格式
整理ppt
12
插入子查询结果(续)
DBMS在执行插入语句时会检查所插元组是
否破坏表上已定义的完整性规则
实体完整性 参照完整性 用户定义的完整性
对于有NOT NULL约束的属性列是否提供了非空值 对于有UNIQUE约束的属性列是否提供了非重复值 对于有值域约束的属性列所提供的属性值是否在值域范围

《数据库原理》第三章

《数据库原理》第三章

• R(U,D,DOM,F)
– – – – – R 关系名 U 组成该关系的属性名集合 D 属性组U中属性所来自的域 DOM 属性向域的映象集合 F 属性间的数据依赖关系集合
• 关系模式通常可以简记为:R (U) 或R (A1,A2,…, An)
– R 关系名 – A1,A2,…,An 属性名
表3.3 “销售”关系
T002 T003 T004
商品名称 康佳彩电SP21808
TCL彩电L19N6 康佳彩电P29AS281 长虹彩电PD29916
生产商 康佳集团股份有限公司
TCL集团 康佳集团股份有限公司 四川长虹电器有限公司
销售价格 899
1490 1490 1690
T005
T006
长虹彩电CHD25800
TCL彩电HD29H73S
• 扩展的关系代数
– 广义投影 – 聚集运算 – 外联接
基本运算
• 选择运算
– 选择(Selection)运算是根据某些条件对关系进行水 平分割,即选择符合条件的元组。条件用命题公式F表 示,F中的运算对象是常量(用引号括起来)或元组分 量(属性名或列的序号),设关系R关于公式F的选择 操作用σF(R) ,形式定义如下:
1490 1490 1690
T005
T006
长虹彩电CHD25800
TCL彩电HD29H73S
四川长虹电器有限公司
TCL集团
1699
1790
• 列出“商品”关系中“所有商品代码及销售价 格”。可以表示为: 商品代码,销售价格(商品)。
商品代码 T001 T002 销售价格 899 1490
T003
• R×S={t│t=<tr,ts>∧trR∧tsS} • 若R有n个元组,S有m个元组,则R×S有n×m个 元组,n×m称为该笛卡儿积的基数。

原理及应用(MySQL版)课件 第三章 数据库编程

原理及应用(MySQL版)课件   第三章 数据库编程
■SET @name=" SCOtt " ;
■SELECT * FROM emp ■ WHERE UPPER(ename)=TRIM(UPPER(@name)) ;
■5)取子串函数
■ SUBSTRING(str,start,length)返回字符串str从start 始长度为length的子串。
■ 【例3-14】返回emp 中ename值以"S"开头的雇员信息。
、SYSDATE()4个函数作用相同 ,均返回当前系统的日
期时间,格式为"YYYY-MM-DD HH:MM:SS"。
■【例3-18】示例。
■SELECT CURRENT_TIMESTAMP(),LOCALTIME(),

NOW(),SYSDATE() ;
■【例3-19】上面例3-17也可用如下命令方式实现。 ■ SELECT ename 姓名,
■SELECT * FROM emp ■ WHERE UPPER(ename)=UPPER(@name) ;
■4)删除空格函数
■LTRIM(str)返回删除前导空格的字符串str; ■RTRIM(str)返回删除尾部空格的字符串str; ■TRIM(str)返回删除两侧空格的字符串str。
■【例3-13】示例。
comm字段的值 ,当comm字段值为NULL时 ,显示值为0
, 否则显示当前字段的值。
■SELECT ename,IF(comm IS NULL,0,comm) 奖金
■ FROM emp LIMIT 5;
■2)CASE()函数 ■ CASE 表达式
■ WHEN v1 THEN r1 ■ WHEN v2 THEN r2
RETURN 语句 ; END

数据库课件第三讲3.PPT教学课件

数据库课件第三讲3.PPT教学课件
第三章 数据库的安全性与完整性
为了保证数据库数据的安全可靠和正确有效, DBMS必须提供统一的数据保护功能
完整性 二者区别:完整性是防止错误信息的输入和
输出,所造成的无效操作和错误结果。后者 是保护数据库防止恶意破坏和非法存取,也 就是说是防范非法用户和非法操作的。
2020/12/10
1
3.1 安全性
GRANT SELECT ON EMPLOYEE TO C;
D不能把C授予的权限转授个其他用户
例5、用户A撤销C在EMPLOYEE关系上的查询权 限
REVOKE SELECT ON EMPLOYEE FROM C;
数据库管理系统在撤销C查询EMPLOYEE关系
权限的同时,也撤销了C授予D查询
2020E/1M2/10PLOYEE关系的权限
数据库系统的安全保护措施是否有效是数据 库系统主要的性能指标之一
2020/12/10
3
3.1 安全性(续)
什么是数据库的安全性
数据库的安全性是指保护数据库,防止因用户 非法使用数据库造成数据泄露、更改或破坏。
为保证数据库的安全性,DBMS要处理以下三方 面的问题:
1、用户权限问题:授权机制
不允许查询单个记录信息
例:允许查询“程序员的平均工资是多少?” 不允许查询“程序员张勇的工资?
2020/12/10
17
统计数据库中特殊的安全性问题 从合法的查询中推导出不合法的信息
例1:下面两个查询都是合法的: 1.本公司共有多少女高级程序员? 2.本公司女高级程序员的工资总额是多少?
如果第一个查询的结果是“1”,
2020/12/10
12
例3、用户A授予用户C查询EMPLOYEE和 DEPARTMENT 关系的权限,并允许C向其他 用户传递这些权限 GRANT SELECT ON

《数据库原理及应用》教学课件 第三章SQL基础

《数据库原理及应用》教学课件 第三章SQL基础
数据库原理及应用
第三章 SQL基础
本章导读
结构化查询语言(Structured Query Language,SQL) 是关系数据库的标准语言,是集数据查询、数据操纵、数 据定义与数据控制于一体的综合性语言。在关系数据库 中,可以通过它完成数据库内的所有操作。本章首先介绍 SQL的发展及特点,然后通过实例介绍数据库和数据表的 基本操作。
④ MODIFY FILE:指定要修改的文 件。
⑤ ADD FILEGROUP:向数据库中 添加文件组。
⑥ REMOVE FILEGROUP:从数据 库中删除文件组。若文件组不为空,则 无法删除。
⑦ “[ , … N]”表示在前一语句后可 接N个同格式语句。
⑧ “|”表示用其隔开的语句在一次 命令中不可同时选用。
20
3.2 数据库基本操作
3.2.4 修改数据库
【例3-2】 将数据库 test 的名称改为 test1。 ALTER DATABASE test MODIFY NAME=test1
【例3-3】 将数据库SRS的日志文件最大容量改为100 MB。
ALTER DATABASE SRS MODIFY FILE (NAME=SRS_Data, MAXSIZE=100MB)
系列 1, 锐系普列PP2T, 锐, 2普.8 PPT, 2.8
日志文件由一系列日志记录组成,它 记录了数据库的更新情况和用户对数据库 的修改操作等。
当数据库发生损坏时,可以通过日志 文件分析出错原因;当数据丢失时,也可 以使用日志文件恢复数据库。

16
3.2 数据库基本操作
3.2.3 创建数据库
02 用SSMS创建数据库
在 SSMS 中可按如下步骤创建数据库。

数据库系统概念第3章关系数据库PPT课件

数据库系统概念第3章关系数据库PPT课件
计算机系),有5个分量
2020/8/6
22
基本术语(续)
关系模式:二维表的结构称为关系模 式。
设有关系名为R,属性分别为A1,A2 ,…,An,则关系模式可以表示为 :
R(A1,A2,…,An) 如果将关系模式理解为数据类型,则 2020/关8/6 系就是该数据类型的一个具体值。23
基本术语(续)
2020/8/6
11
关系模型查找示例
学号 0811101 0811102 0811103 0821101 0821102
姓名 李勇 刘晨 王敏 张立 吴宾
年龄 21 20 20 20 19
性别 男 男 女 男 女
所在系 计算机系 计算机系 计算机系 信息管理系 信息管理系
2020/8/6
12
关系操作
2020/8/6
6
学生
学生关系模型
学号 0811101 0811102 0811103 0821101 0821102
姓名 李勇 刘晨 王敏 张立 吴宾
年龄 21 20 20 20 19
பைடு நூலகம்
性别 男 男 女 男 女
所在系 计算机系 计算机系 计算机系 信息管理系 信息管理系
2020/8/6
7
3.1.2 数据操作
2020/8/6
10
层次模型查找示例
教研室
学院
J01
计算机 教2楼
计算机 李明 21 学生 S01 王平 男 21
网络 赵新 12
S02 刘力 男 22
软件工程 胡杰 15
S03 李爽 女 21
T101 王大明 教授 T102 刘勇 副教授 T103 钱红 教授 …
T301 陈小玲 教授 T302 张海涛 副教授 …

数据库原理第3章

数据库原理第3章

UNIQUE
该列值不能有相同者
第3章 SQL语言初步 SQL只要求语句的语法正确就可以,对字母大小写等格 式不作规定;一条语句可以放在多行上,字和符号间有一个 或多个空格分隔;一般每个列定义单独占一行(或数行),每 个列定义中相似的部分对齐(这不是必须的),从而增加了可 读性,让人一目了然。
第3章 SQL语言初步 例3.1 创建职工表。
第3章 SQL语言初步 (4) 两种使用方式,统一的语法结构。DML有两类:宿 主型和自主型。宿主型DML本身不能独立使用,只能嵌入特 定的计算机高级语言(如COBOL、C等)。COBOL、C等高级 语言称为主语言。自主型又称自含型,可以独立使用。因此 ,SQL既是自含式语言(用户使用),又是嵌入式语言(程序员 使用)。
Title 工程师 高工 工程师 工程师 工程师 助工 助工 助工
Dno 01 03 02 01 01 03 02 02
第3章 SQL语言初步
表(二) Item
Ino 200801 200802 200901 200902 201001 201002
Iname 硬盘伺服系统的改进 巨磁阻磁头研究 磁流体轴承改进 高密度记录磁性材料研究 MO 驱动器性能研究 相变光盘性能研究
外,在关系模型中实体和实体之间的联系均用关系表示,这
种数据结构的单一性带来了数据操作符的统一。
第3章 SQL语言初步 (2) 面向集合的操作方式。非关系数据模型采用的是面 向记录的操作方式,操作对象是一条记录。这就使得在操作 过程中通常需要说明具体的处理过程,如按照哪条路径如何 读取数据。而SQL采用面向集合的操作方式,操作对象是集
CREATE TABLE Employee
( Eno CHAR(4) NOT NULL UNIQUE , /*Eno取唯一值*/

数据库课件第3章 40页PPT文档

数据库课件第3章 40页PPT文档
数据库及其应用
第3章 Access及其数据库管理
学习目标与要求
• 1.了解Access的发展与特点,掌握Microsoft Office软件的安装。
• 2.了解Access启动和工作界面,掌握关于数据 库窗口、任务窗格等的概念和操作。
• 3.深入理解Access数据库的意义、作用,掌握 数据库的建立和存储操作。
• 数据库打开与关闭:通过【文件】菜单“打开” 项或工具栏中打开按钮,弹出“打开”对话框打 开。 通过菜单或关闭按钮关闭数据库。
• 设置文件默认路径 :在数据库窗口下,单击【工 具】菜单“选项”项,在“选项”对话框中选择 “常规”选项卡,在“默认数据库文件夹”文本 框中,键入默认文件夹的路径。
3.3 Access数据库管理
• 2019年1月发行Office 2000,2019年5月发 行Office XP(2019)。2019年11月, Office 2019发行。当前,最新版本是 Office 2019。
3.1 Access发展概述
2
Access特点
(1) 完善地管理各种数据库对象,具有强大的数据组织、用户 管理、安全检查等功能。
• 模块。模块是利用VBA语言编写的实现特 定功能的程序段。
3.2 Access数据库基础与操作
2 Access数据库存储
• Access的7种数据库对象都是逻辑概念。 除页对象外,其他六种对象都保存在数据 库文件中,其扩展名是“.mdb”。每个页 对象则单独保存为一个网页文件。
3.2 Access数据库基础与操作
3.3 Access数据库管理
1 数据库备份与恢复 • 数据的完整性保护,最简单和有效的方法是进行
备份。备份即将数据库文件在另外一个地方保存 一份副本。当数据库由于故障或人为原因被破坏 后,将副本恢复即可。数据库备份不是一次性而 是经常的和长期的。 • 方法一,利用操作系统的文件拷贝功能。 • 方法二, Access也提供了备份和恢复数据库的 方法。在数据库窗口中选择“文件”菜单中“备 份数据库”菜单命令,在事先定义好的备份数据 库的文件夹备份文件。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第3章SQL语言第1页第2页3.1 SQL语言简述--SQL语言提出和发展1970:E.J.Codd发表了关系数据库理论1974-79:IBM 以Codd的理论为基础研制出一套规范语言-Sequel(Structured English Query Language),并于1980年改名为SQL(Structured Query Language)1979:Oracle 发布了商业版SQL1981-84:出现了其他商业版本,例如IBM(DB2)等 1986年推出了SQL标准:SQL-86第3页3.1 SQL语言简述--SQL语言提出和发展(续)1989年ANSI/ISO推出了SQL标准: SQL-89☐数据库语言SQL的标准集合。

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

1992年进一步推出了SQL标准:SQL-92☐是SQL-89的超集,增加了许多新特性,如新数据类型,更丰富数据操作,更强完整性支持等1999年进一步推出了SQL标准:SQL-99☐对面向对象的一些特征予以支持,支持抽象数据类型,支持行对象和列对象等,对递归、触发等复杂操作也予以规范化定义第4页3.1 SQL语言简述--SQL语言概览SQL语言是集数据定义语言DDL、数据操纵语言DML 和数据控制语言DCL于一体的数据库语言SQL语言主要由以下9个单词引导的操作语句来构成,但每一种语句都能表达复杂的操作请求☐DDL语句引导词:Create(建立),Alter(修改),Drop(撤消)✓主要是建立、删除和修改数据对象,包括定义Database,Table, View, Index,完整性约束条件等,也包括定义对象(行对象, 列对象)第5页3.1 SQL语言简述--SQL语言概览(续)☐DML语句引导词:Insert, Update, Delete, Select✓主要是建立、删除和修改数据对象✓各种复杂条件的检索,如连接查找,模糊查找,分组查找,嵌套查找等☐DCL语句引导词:Grant, Revoke✓安全性控制:授权和撤消授权。

主要是控制对数据库的访问,服务器的关闭、启动等第6页3.1 SQL语言简述--本章目标全面地完整地掌握SQL语言的各种语法和能力复杂查询请求能够熟练地准确地用SQL语言表达第7页第8页第9页3.2 简单的SQL-DDL/DML--课堂讲义中使用的数据库/表(续)学生选课数据库SCT•课程:课程号C#,课程名CName,学时Hours,学分Credit,任课教师编号T#Course(C# integer, Cname char(12), Chours integer, Credit float(1), T# integer)第10页3.2 简单的SQL-DDL/DML--课堂讲义中使用的数据库/表(续)学生选课数据库SCT•教师:教师编号T#,教师名TName,所属院系D#,工资SalaryTeacher(T# integer, Tname char(10), D# integer,Salary float(2))•选课:学生号S#, 课程号C#, 成绩ScoreSC(S# integer, C# integer, Score float(1))第11页3.2 简单的SQL-DDL/DML--创建数据库(Create Database)DDL: Data Definition Language☐创建数据库(DB)☐创建DB中的Table(定义关系模式)☐定义Table的约束条件☐定义Table中各个属性的约束条件☐定义View、Index、Tablespace… …等☐上述各种定义的撤消与修正DDL通常由DBA来使用,也有经DBA授权后由应用程序员来使用我们先学习Create Database及Create Table的简单形式,其他内容将在实验课介绍Oracle时介绍。

第12页3.2 简单的SQL-DDL/DML--创建数据库(Create Database)数据库(Database)是若干具有相互关联关系的Table/Relation的集合。

可以简单看作是一个集中存放若干Table的大型文件创建Database,需使用create database语句create database的简单语法形式为:create database 数据库名;SCT 例如:创建我们的课程学习数据库SCTcreate database SCT;接下来就可以在其中定义Table了第13页3.2 简单的SQL-DDL/DML--创建表(Create Table)创建Table,需使用create table语句create table简单语法形式为:create table 表名( 列名数据类型[Primary key |UNIQUE][not null][, 列名数据类型[not null] , … ] ;•PRIMARY KEY: 对给定的一列或多列强制实体完整性的约束。

对于每个表只能创建一个PRIMARY KEY约束。

•UNIQUE:对给定的一列或多列提供实体完整性的约束。

一个表可以有多个UNIQUE约束。

•Not Null: 是指该列允许不允许有空值出现,如选择了not null表明该列不允许有空值出现。

通常主键是不允许有空值的。

语法中的数据类型在SQL标准中有定义第14页3.2 简单的SQL-DDL/DML--创建表(Create Table)(续)在SQL-92标准中定义的数据类型☐Char (n): 固定长度的字符串☐Varchar(n): 可变长字符串☐int: 整数//有时不同系统也写作integer☐Numeric (p, q): 固定精度数字, 小数点左边p位, 右边p-q位☐real: 浮点精度数字。

有时不同系统也写作float(n),小数点后保留n位☐Date: 日期(2003-09-12)☐time: 时间(23:15:003)☐…现行商用DBMS的数据类型有时和上面有些差异和高级语言的数据类型,总体上是一致的,但也有些差异第15页3.2 简单的SQL-DDL/DML--创建表(Create Table)(续)•例如定义学生表:StudentCreate Table Student( S# integer not null Primary key,Sname char(10), Ssex char(2), Sage integer,D#integer, Sclass integer);•再例如定义课程表:CourseCreate Table Course( C# integer not null Primary key,Cname char(12), Chours integer,Credit float(1), T# integer);•同学可自己定义另外三个表:Dept, Teacher, SC第16页3.2 简单的SQL-DDL/DML--向表中追加元组(Insert)在表中追加元组的值要使用DMLDML: Data Manipulation Language☐向Table中追加新的元组:Insert☐修改Table中某些元组中的某些属性的值: Update☐删除Table中的某些元组: Delete☐对Table中的数据进行各种条件的检索: SelectDML通常由用户或应用程序员使用,访问经授权的数据库我们先学习Insert的简单形式,其他内容将在实验课介绍Oracle时介绍。

第17页3.2 简单的SQL-DDL/DML--向表中追加元组(Insert)(续)追加元组,需使用insert into语句insert into简单语法形式为:insert into 表名[(列名[,列名]… ]values(值[, 值], …) ;语法中的values后值的排列,须与into子句后面的列名排列一致。

若表名后的所有列名省略,则values后的值的排列,须与该表存储中的列名排列一致。

第18页3.2 简单的SQL-DDL/DML--向表中追加元组(Insert)(续)•例如:追加学生表中的元组Insert Into Student ( S#, Sname, Ssex, Sage, D# , Sclass) Values ( ‘98030102’ , ‘张四’, ‘女’, 20,’03’,‘980301’);Insert Into StudentValues ( ‘98030102’ , ‘张四’, ‘女’, 20,’03’,‘980301’);第19页3.2 简单的SQL-DDL/DML--向表中追加元组(Insert)(续)•再例如:追加课程表中的元组Insert Into CourseValues ( ‘001’ , ‘数据库’, 40, 6,’001’);/*所有列名省略,须与定义或存储的列名顺序一致Insert Into Course(Cname, C#, Credit, Chours, T#);Values (‘数据库’, ‘001’, 6, 20, ‘001’);/*如列名未省略,须与语句中列名的顺序一致•下面将进行SQL-DML之Select语句的学习,然后再进一步学习其他语句,因为其他语句有时要引用Select语句第20页第21页3.3 SQL-DML之查询Select--基本的检索操作SQL提供了结构形式一致但功能多样化的检索语句SelectSelect 的简单语法形式为:Select列名[[, 列名] … ] From 表名[ Where检索条件] ;语义:从表名所给出的表中,查询出满足检索条件的元组,并按给定的列名及顺序进行投影显示,相当于列名,… ,列名(检索条件(表名))Select语句中的select … , from… , where…, 等被称为子句,在以上基本形式基础上会增加许多构成要素,也会增加许多新的子句,满足不同的需求,下面将逐步介绍。

第22页3.3 SQL-DML之查询Select--基本的检索操作(续)•例如:检索学生表中所有学生的信息Select S#, Sname, Ssex, Sage, Sclass, D#From Student ;--Select * From Student ; •再如:检索学生表中所有学生的姓名及年龄Select Sname, Sage From Student ;•再如:检索学生表中所有年龄小于19岁的学生的年龄及姓名Select Sage, Sname From StudentWhere Sage <= 19;第23页//如投影所有列,则可以用*来简写//投影出某些列//投影的列可以重新排定顺序3.3 SQL-DML之查询Select--基本的检索操作(续)检索条件的书写,与选择运算con(R)的条件con书写是一样的,只是其逻辑运算符用and,or,not来表示, 同时也要注意运算符的优先次序及括弧的使用。

相关文档
最新文档