第三章+关系数据库标准语言SQL(一)

合集下载

数据库原理 第三章关系数据库标准语言——SQL期末习题与答案

数据库原理 第三章关系数据库标准语言——SQL期末习题与答案

1、数据库的事务日志文件()。

A.只能有一个B.可以有多个C.可以没有D.以上都不对正确答案:B2、CREATE命令属于()语句。

A.数据查询B.数据操纵C.数据定义D.数据控制正确答案:C3、使用ALTER命令修改数据时,以下说法错误的是()。

A.可以增加主要数据文件B.可以删除次要数据文件C.可以修改文件的增容方式D.可以增加事务日志文件正确答案:A4、使用存储存储过程Sp_helpfile可以()。

A.查看数据库的结构B.查看数据库的文件信息C.查看数据库的文件组信息D.以上都可以5、在DBMS中分离数据库之后,()。

A.数据库文件将会从磁盘上删除B.数据库文件将会脱离DBMSC.事务日志文件将会从磁盘上删除D.以上都不对正确答案:B6、假设学号字段“SNo”的数据类型为nvarchar(6),当“SNo”的值为“S001”时,“SNo”在内存中占()字节。

A.4B.6C.8D.12正确答案:C7、创建数据表时,如果给某个字段定义PRIMARY KEY约束时,该字段的数据()。

A.不允许有空值B.允许有多个空值C.允许有一个空值D.以上都不对正确答案:A8、为数据表增加新的字段时,()。

A.可以为新字段设置NOT NULL约束B.不能为新字段设置NOT NULL约束C.不能为新字段设置约束D.以上都不对9、在SQL的SELECT语句中,能实现选取操作的是()。

A.SELECTB.FROMC.WHERED.GROUP BY正确答案:C10、假定学生关系是S(SNo,SName,Sex,Age),课程关系是C(CNo,CName,Teacher),学生选课关系是SC(SNo,CNo,Grade)。

要查找选修“数据库”课程的“男”学生姓名,将涉及的关系是()。

A.SB.SC,CC.S,SCD.S,C,SC正确答案:D11、下列SQL语句中,()不是数据操纵语句。

A.INSERTB.CREATEC.DELETED.UPDATE正确答案:B12、SQL中,下列涉及空值的操作,不正确的是()。

《数据库应用》全套PPT电子课件教案-第三章(关系数据库标准语言SQL)

《数据库应用》全套PPT电子课件教案-第三章(关系数据库标准语言SQL)
例:DROP TABLE 订购单 DROP TABLE直接从磁盘上删除<表名>所对应的数据
库文件。
16
第3章 关系数据库标准语言SQL
3.3 数据查询
SQL的核心是查询。SQL的查询命令也称作SELECT命令,它 的基本形式由SELECT-FROM-WHERE查询块组成,多个查 询块可以嵌套执行。SQL查询命令格式:
DISTINCT短语的作用是去掉查询结果中的重复值.
19
第3章 关系数据库标准语言SQL
SELECT * FROM 仓库 其中“*”是通配符,表示所有属性,即字段,这里的命令 等同于:
SELECT 仓库号,城市,面积 FROM 仓库 SELECT DISTINCT 仓库号 FROM 职工 WHERE 工资 > 1210
SQL语言是当前最为成功、应用最为广泛的关 系数据库语言,其主要特点包括:
1. SQL语言非常简洁 2. 综合统一 3. 高度非过程化 4. 面向集合的操作方式 5. 以同一种语法结构提供两种使用方式
4
第3章 关系数据库标准语言SQL
3.1.2 SQL语言功能概述
SQL功能可分为四大部分:数据定义功能、数据 控制功能、数据查询功能和数据操纵功能。
21
第3章 关系数据库标准语言SQL
匹配串中可包含如下四种通配符: _(下划线):匹配任意一个字符。 %(百分号):匹配0个或多个字符。 [ ]:匹配[ ]中的任意一个字符。如[abcd]表示匹配a、b、
c和d中的任何一个。 [^]:不匹配[ ]中的任意一个字符。如[abcd]表示不匹配
a、b、c和d。
SELECT 职工号,城市 FROM 仓库,职工 WHERE ( 面积 > 400) AND

第三章 关系数据库标准语言SQL语言

第三章 关系数据库标准语言SQL语言

第三章关系数据库标准语言SQL语言一、选择题1. 在SQL语言中授权的操作是通过________________语句实现的。

C A.CREATEB.REVOKEC.GRANTD.INSERT2. 假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。

要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系____。

DA.S B.SC,C C.S,SC D.S,C,SC3. 在 MS SQL Server中建立了表 Student(no,name,sex,birthday),no为表的主码,其他属性的默认值为 null。

表中信息如图所示:能够正确执行的插入操作是________。

A No Name Sex Birthday 101 张丽丽女 1967/05/07 102 李芳女 1970/04/14103 王朋男 1982/10/27 A.INSERT INTO student (no,sex) VALUES(102,′男′) B.INSERT INTO student (name,sex) VALUES(′王中′,′男′)D.INSERT INTO student VALUES(106,′王中′,′男′,′1984/03/08′) C.INSERT INTO stude nt VALUES(102,′男′,′王中′,′1984/03/08′) 4. SQL语言中,删除一个表的命令是________。

B A. DELETE B. DROP C. CLEAR D. REMORE 5. 为数据表创建索引的目的是________ AA.提高查询的检索性能B.创建唯一索引C.创建主键D.归类6. 在SQL语言中,条件“RETWEEN 20 AND 30”表示年龄在20到30之间,且________A. 包括20岁和30岁B. 不包括20岁和30岁C. 包括20岁不包括30岁D. 不包括20岁包括30岁7. 为了使索引键的值在基本表中唯一,在建立索引语句中应使用保留字________ AA. UNIQUEB. COUNTC. DISDINCTD. UNION 8. 下面关于SQL语言的说法中,哪一种说法是错误的? ________ AA. 一个SQL数据库就是一个基本表B. SQL语言支持数据库的三级模式结构C. 一个基本表可以跨多个存储文件存放,一个存储文件可以存放一个或多个基本表D. SQL的一个表可以是一个基本表,也可以是一个视图二、简答题1. 什么是基本表?什么是视图?两者的区别和联系是什么?【解答】基本表是本身独立存在的表,在SQL中一个关系就对应一个表。

sql 课件 第3章 关系数据库标准语言SQL

sql 课件 第3章 关系数据库标准语言SQL

山东财政学院计算机信息工程学院
3、默认文件组
在每个数据库中,同一时间只能有一个文件组是默认 文件组(Default Filegroup)。 当进行数据库操作时,如果不指定文件组,则系统自 动选择默认文件组。 可使用Transact-SQL语句中的alter database语句指 定数据库的默认文件组。 在不特别指定的情况下,系统将主要文件组认定为默 认文件组。
山东财政学院计算机信息工程学院
2、扩展盘区
由8个连续页面组成的数据结构称为一个盘区。 是SQL Server分配给表和索引的基本单位。 扩展盘区可分为统一扩展盘区和混合扩展盘区。 统一扩展盘区由一个数据库对象所有。 混合扩展盘区可以为多个数据库所有,即其中最多 可以放8种数据库对象。
山东财政学院计算机信息工程学院
山东财政学院计算机信息工程学院
例:创建具有两个文件组的数据库bank2
CREATE DATABASE BANK2 ON PRIMARY (NAME=BANK2_1_DAT, FILENAME='d:\bank\bank2_f1dat.mdf', SIZE=20MB, MAXSIZE=50MB, FILEGROWTH=5MB), (NAME=BANK2_2_DAT, FILENAME='d:\bank\bank2_f2dat.ndf', SIZE=10MB, MAXSIZE=40MB, FILEGROWTH=5MB),
山东财政学院计算机信息工程学院
3.2 数据定义
3.2.1 数据库的定义 3.2.2 表的定义 3.2.3 索引的定义
山东财政学院计算机信息工程学院
数据定义
SQL Server数据库由包含数据的表集合和其他对象( 如视图、索引、存储过程、触发器、用户、角色等)组 成,支持三级模式结构。其中用户模式对应于视图,逻 辑模式对应于基本表,物理模式对应于存储文件、索引 等。

数据库系统概论(第四版)_王珊_萨师煊_chp3-1

数据库系统概论(第四版)_王珊_萨师煊_chp3-1

课程表:Course(Cno,Cname,Cpno,Ccredit)
学生选课表:SC(Sno,Cno,Grade)
Student表
学 号 Sno
姓 名 Sname
性 别 Ssex
年 龄 Sage
所在系 Sdept
200215121 200215122 200215123 200515125
李勇 刘晨 王敏 张立
查询教师的姓名、职称、应发工资
查询教师的姓名、职称、应发工资 π姓名,职称,应发工资(教师⋈工资)
查询学分大于3的所有课程名称、及其对应的授课 老师姓名和老师所在的系名
查询学分大于3的所有课程名称、及其对应的授课 老师姓名和老师所在的系名 π课程名称,姓名,系名称(σ学分>3(系部⋈教师⋈ 授课⋈ 课程))
3.4.3 嵌套查询
3.4.4 集合查询
3.4.5 Select语句的一般形式
3.4.1 单表查询
查询仅涉及一个表:
一、 选择表中的若干列 二、 选择表中的若干元组 三、 ORDER BY子句 四、 聚集函数 五、 GROUP BY子句
一、 选择表中的若干列
查询指定列
男 女 女 男
20 19 18 19
CS CS MA IS
Course表
课程号 Cno
1 2 3 4 5 6 7
课程名 Cname
数据库 数学 信息系统 操作系统 数据结构 数据处理 PASCAL语言
先行课 Cpno
5 1 6 7 6
学分 Ccredit
4 2 4 3 4 2 4
SC表
学号 Sno
语言简洁,易学易用
SQL语言的动词非常少,主要包括:

第3章:关系数据库标准语言SQL

第3章:关系数据库标准语言SQL

例6:建立一个“课程”表Course. :建立一个“课程” Create table Course (Cno Cpno Char(4) Primary Key, , Char (4) , Cname Char (40) , Ccredit Smallint, , Foreign Key (Cpno) References Course(Cno) );
不论基本表中原来是否已有数据, 不论基本表中原来是否已有数据 , 新增加 的列一律为空值。 的列一律为空值。
例9:将年龄的数据类型改为整型。
ALTER TABLE Student Alter Column Sage Int; ;
修改原有的列定义有可能会破坏已有数据。 修改原有的列定义有可能会破坏已有数据。
group by:此短语将查询结果按某一列或某几 :
列的值进行分组。Having子句用于与group 列的值进行分组。Having子句用于与group by 子句用于与 子句配合使用,用于说明分组条件。 子句配合使用,用于说明分组条件。
查询分类
单表查询 连接查询 嵌套查询 集合查询
CREATE TABLE Student (Sno Ssex Sage Sdept
CHAR(5) NOT NULL UNIQUE,
Sname CHAR(20) UNIQUE, ,
CHAR(1) , INT, , CHAR(15)); ;
修改
Alter table <表名 表名> 表名
Add <新列名> <新列类型> (列宽度)[完整性约束] Drop Column <列名>|<完整性约束名> Alter Column <列名> <列类型> (列宽度) P87例8,例9,例10 , ,

第3章 关系数据库标准语言SQL_第4版(1-3)

第3章 关系数据库标准语言SQL_第4版(1-3)
1 6 7 6
学分 Ccredit 4 2 4 3 4 2 4
SC表
学号 Sno
200215121 200215121 200215121 200215122 200215122
课程号 Cno
1 2 3 2 3
成绩 Grade
92 85 88 90 80
§3.3 数据定义
SQL的数据定义功能: 模式定义、表定义、视图 和索引的定义
被参照建立一个“学生选课”表SC CREATE TABLE SC Cno CHAR(4), Grade SMALLINT, 列级完整性约束条件, Sno是外码,被参照表是 Student
(Sno CHAR(9) REFERENCES Student(Sno) , 主码由两个属性构 成,必须作为表级 完整性进行定义

用户数据库投入运行后,可根据需要随时逐步修 改模式,不影响数据的运行。 数据操作符统一
2.高度非过程化

非关系数据模型的数据操纵语言“面向过程”,
必须制定存取路径

SQL只要提出“做什么”,无须了解存取路径。 存取路径的选择以及SQL的操作过程由系统自动 完成。
3.面向集合的操作方式

SQL
数据流(Data) 元数据流(Meta Data) 对应于视图和部 分基本表
视图1
视图2
外模式
对应于基本表
基本表1 基本表2 基本表3 基本表4
数据词典
(元数据)
模式
对应于存储 文件
存储文件1 存储文件2 内模式
SQL的基本概念(续)

基本表(BASE TABLE):
是独立存在的表, 一个关系对应一个基本表,
嵌入式语言:嵌入高级语言如C,COBOL, FORTRAN,PB等

数据库第三章习题及答案

数据库第三章习题及答案

第3章关系数据库标准语言SQL一、选择题1、SQL语言是的语言,易学习。

A.过程化 B.非过程化 C.格式化 D.导航式答案:B2、SQL语言是语言。

A.层次数据库 B.网络数据库 C.关系数据库 D.非数据库答案:C3、SQL语言具有的功能。

A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操纵答案:B4、SQL语言具有两种使用方式,分别称为交互式SQL和。

A.提示式SQL B.多用户SQL C.嵌入式SQL D.解释式SQL 答案:C5、假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。

要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系。

A.S B.SC,C C.S,SC D.S,C,SC 答案:D6、若用如下的SQL语句创建一个student表:CREATE TABLE student(NO C(4) NOT NULL,NAME C(8) NOT NULL,SEX C(2),AGE N(2))可以插入到student表中的是。

A.(‘1031’,‘曾华’,男,23) B.(‘1031’,‘曾华’,NULL,NULL)C.(NULL,‘曾华’,‘男’,‘23’) D.(‘1031’,NULL,‘男’,23) 答案:B7、当两个子查询的结果时,可以执行并,交,差操作.A.结构完全不一致 B.结构完全一致C.结构部分一致D.主键一致答案:B第8到第10题基于这样的三个表即学生表S、课程表C和学生选课表SC,它们的结构如下:S(S#,SN,SEX,AGE,DEPT)C(C#,CN)SC(S#,C#,GRADE)其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩。

第三章 关系数据库标准语言SQL(习题)

第三章 关系数据库标准语言SQL(习题)

一、选择题1.SQL语言是()的语言,容易学习.BA. 过程化B.非过程化C.格式化D.导航式2.在视图上不能完成的操作是()。

CA.更新视图B.查询C.在视图上定义新的表D.在视图上定义新的视图3.SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,其中,CREA TE、DROP、ALTER语句是实现哪种功能()。

CA.数据查询B.数据操纵C.数据定义D.数据控制4.SQL语言中,删除一个视图的命令是()。

BA.DELETEB.DROPC.CLEARD.REMOVE5.在SQL语言中的视图VIEW是数据库的()。

AA.外模式B.模式C.内模式D.存储模式6.下列的SQL语句中,()不是数据定义语句。

DA.CREA TE TABLEB.DROP VIEWC.CREA TE VIEWD.GRANT7.若要撤销数据库中已经存在的表S,可用()。

CA.DELETE TABLE SB.DELETE SC.DROP TABLE SD.DROP S8.若要在基本表S中增加一列CN(课程名),可用()。

CA. ADD TABLE S (CN CHAR(8))B. ADD TABLE S ALTER (CN CHAR(8))C. ALTER TABLE S ADD CN CHAR(8)D. ALTER TABLE S (ADD CN CHAR(8))9.学生关系模式S(S#,Sname,Sex,Age),S的属性分别表示学生的学号、姓名、性别、年龄。

要在表S中删除一个属性“年龄”,可选用的SQL语句是()。

BA.DELETE Age from SB.ALTER TABLE S DROP COLUMN AgeC.UPDA TE S AgeD.ALTER TABLE S ‘Age’10.有关系S(S#,SNAME,SAGE),C(C#,CNAME),SC(S#,C#,GRADE)。

其中S#是学生号,SNAME是学生姓名,SAGE是学生年龄,C#是课程号,CNAME是课程名称。

关系数据库标准查询语言SQL

关系数据库标准查询语言SQL

SELECT Sname, ‘Year of Birth:’, 2008-Sage ,

ISLOWER(Sdept)
FROM Student ; 结果为:
Sname ‘ Yearof Birth:’ 2008-Sage ISLOWER(Sdept)

李勇 Yearof Birth: 1986
第三章关系数据库标准查询语言sql第三章第三章关系数据库标准语言关系数据库标准语言sqlsql结构化查询语言sqlstructuredquerylanguage是一种介于关系代数与关系演算之间的语言它具有查询操纵定义和控制功能是一种通用的功能极强的标准的关系数据库语言
第三章 关系数据库标 准查询语言SQL
例4:删除关于学号必须取唯一值的约束。 ALTER TABLE Student DROP UNIQUE(Sno);

3.删除基本表
基本格式: DROP TABLE〈表名〉
例5. 删除student表 DROP TABLE Student ;
3.2.2.建立与删除索引
1. 建立索引 基本格式: CREATE [UNIQUE] [CLUSTER] INDEX <索引名> ON <表名>(<列名>[<次序>[,<列名>[〈次序>]]…..); 次序:ASC,DESC 例 6: 为Student, Course, SC 3个表 建立索引,Student
2.选择表中的若干元组
1).消除重复的行 例6.查询所有选修过课的学生学号。
SELECT Sno
FROM SC ;
Sno
Cno Grade

数据库原理 第三章:关系数据库标准语言SQL

数据库原理 第三章:关系数据库标准语言SQL
RANGE Course CX SC SCX CX (o=o∧CX.Pcno='6')) GET W (Student.Sname): SCX (SCX.Sno=Student.Sno∧
例5:查询选修全部课程的学生姓名。
RANGE SC X Course CX GET W (Student.SN) : CXSCX (SCX.SNO=Student.SNO∧O=O)
1、除运算÷(Division,亦称商)
用途:除法运算同时从行和列的角度进行运算,在表达某 些查询时有用,适合于包含“全部”之类的短语的查询, 例如“查询已注册选修了所有课程的学生名字”。
定义:给定关系 R(X,Y),S(Y,Z),X,Y,Z为属 性列,关系R和关系S中的Y出自相同域集,则: R÷S={tr[X]|tr∈R∧Πy(S)Yx} 其中,Yx为x在R中的象集,x= tr[X]。
② 逻辑运算符:∧(与),∨(或),┐(非)
③ 表示执行次序的括号:()
其中,比较运算符的优先级高于逻辑运算符,可以使用()改
变它们的优先级。
例1:查询所有男学生的姓名。
GET W (Student.Sname) : Student. Ssex = „男’
例2:查询信息系(IS)中年龄小于20岁的学生的学号和年龄
例3:查询S3同学所选课程名
RANGE SC X Course CX GET W (ame):X CX (o=o∧X.Sno=‟S3‟)
此查询涉及两个关系,对两个关系(Course和SC)作用存在 量词,所以用了两个元组变量。
例4:查询至少选修一门其先行课为6号课程的学生名字
操作条件中使用量词时必须用元组变量 例1:查询S3同学所选课程号

大连海事大学2024年硕士自命题复试大纲 F07 数据库

大连海事大学2024年硕士自命题复试大纲  F07 数据库

大连海事大学硕士研究生入学考试大纲考试科目:数据库考试内容(一)要求熟知的章节第一章:绪论第二章:关系数据库第三章:关系数据库标准语言——SQL第四章:数据库安全性控制第五章:数据库完整性第六章:关系数据理论第七章:数据库设计第八章:数据库编程第九章:关系系统及其查询优化第十章:数据库恢复第十一章:并发控制(二)主要内容1、数据管理的发展阶段及每个阶段的特点。

2、数据、数据库、数据库管理系统的概念,DBMS提供的数据控制功能。

3、数据模型的概念,组成数据模型的三要素。

4、概念模型、实体、属性、码、候选码、外码、域、实体型、实体集的概念。

5、实体间的联系及E-R模型。

6、实际的数据库系统支持的主要数据模型,基本层次联系,层次模型、网状模型的数据结构。

7、数据库系统的三级模式结构、两级映象功能、数据的物理独立性和逻辑独立性。

8、数据库系统的组成。

9、关系的定义及关系的特性,关系模式的表示,元组、属性、主属性、码、候选码、非码属性、全码、外码的概念10、关系模型的三类完整性:实体完整性、参照完整性和用户定义完整性11、关系代数的运算:传统的集合运算(并、交、差、笛卡儿积)和专门的关系运算(选择、投影、连接、除法)12、关系数据语言的特点,关系操作的特点。

SQL语言的四个特点13、SQL语言的数据定义功能:包括对基本表、索引和视图的建立修改和删除,语法格式14、掌握查询(SELECT)语句功能和应用(单表、多表连接、嵌套、集函数)。

15、掌握修改(UPDATE)、删除(DELETE)和插入(INSERT)语句的应用16、SQL数据控制功能(GRANT、REVOKE)17、基本表、视图的概念,视图的作用。

18、关系系统查询优化的一般策略19、(平凡与非平凡的)函数依赖、完全函数依赖、部分函数依赖、传递函数依赖、函数依赖、(平凡与非平凡的)多值依赖20、关系规范化:第一范式、第二范式、第三范式、BC范式、4NF的定义,将一个非规范化的表转化为三范式的表的步骤。

关系模型概述

关系模型概述

П Sname,Sage(σSage<20 (Student))
第三章 关系数据库标准语言SQL
3. 3 查询
查询条件运算符
查询条件 比 较 谓词
=, >, <, >=, <=, !=, <>, !>, !< BETWEEN AND, NOT BETWEEN AND IN, NOT IN LIKE, NOT LIKE IS NULL, IS NOT NULL
ALTER TABLE语句
格式:
返回
ALTER TABLE <表名> [ADD <新列名><数据类型>[<列完整性约 束>]] [DROP<列完整性约束名>][MODIFY <列名><数据类型>];
功能:修改已建的基本表 例2:向学生表增加“入学时间”属性列
ALTER TABLE Student ADD Scome DATE;
第三章 关系数据库标准语言SQL
3.3 查询
例4:查询选修课程的学生学号 SELECT Sno П Sno(σGrade≠ ‘’ (Student)) FROM SC; 例4-1:查询选修课程的学生学号 SELECT DISTINCT Sno FROM SC; 例5:查询20岁以下的学生姓名及年龄 SELECT Sname,Sage FROM Student WHRER Sage<20;
例3:修改学生表的“年龄”属性类型为半字长整数
ALTER TABLE Student MODIFY Sage SMALLINT;
例4:删除学生表“姓名”属性列取唯一值的约束
ALTER TABLE Student DROP UNIQUE(Sname);

数据库第三章关系数据库标准语言SQL

数据库第三章关系数据库标准语言SQL

数据库第三章关系数据库标准语言SQL第三章关系数据库标准语言SQL习题1.试述SQL语言的特点。

2.试述SQL的定义功能。

3.用SQL语句建立第二章习题5中的4个表。

4.针对上题中建立的4个表试用SQL语言完成第二章习题5中的查询。

5.针对习题3中的4个表试用SQL语言完成下列各项操作:(1)找出所有供应商的姓名和所在城市。

(2)找出所有零件名称、颜色、重量。

(3)找出使用供应商SI所供应零件的工程号码。

(4)找出工程项目J2使用的各种零件的名称及其数量。

(5)找出上海厂商供应的所有零件号码。

(6)找出使用上海产的零件的工程名称。

(7)找出没有使用天津产的零件的工程号码。

(8)把全部红色零件的颜色改成蓝色。

(9)由S5供给J4的零件P6改为由S3供应,请做必要的修改。

(10)从供应商关系中见风删除S2的记录,并从供应情况关系中删除相应的记录。

6.什么是基本表?什么是视图?两者的区别和联系是什么?7.试述视图的优点。

8.所有的视图是否都可以更新?为什么?9.哪类视图是可以更新的?哪类视图是不可以更新的?各举一例说明。

10.试述某个你熟悉的实际系统中对视图更新的规定。

11.请为三建工程项目建立一个供应情况的视图,包括供应商代码(SNO)、零件代码(PNO)、供应数量(QTY)。

针对该视图完成下列查询:(1)找出三建工程项目使用的各种零件代码及其数量。

(2)找出供应商S1的供应情况。

12.针对习题3建立的表,用SQL语言完成以下各项操作:(1)把对表S的INSERT权限授予用户张勇,并允许他在将此权限授予其他用户。

(2)把查询SPJ表和修改QTY属性的权限授给用户李天明。

13.在嵌入式SQL中是如何区分SQL语句和主语言语句的。

14.在嵌入式SQL中是如何解决数据库工作单元与源程序工作单元之间通信的?15.在嵌入式SQL中是如何协调SQL语言的集合处理方式和主语言的单记录处理方式的?参考答案1.答:(1)综合统一。

DBS第三章1

DBS第三章1
用CREATE语句创建的基表,只是一个空框架,
需装入数据才可使用 数据的装入可用 Insert命令、数据装载程序
复制某表结构的命令如下:
create table 名 as select * from
第三章 关系数据库语言SQL 3.2 SQL的数据定义
二、基表结构的修改(列.主键.外键.别名) --ALTER TABLE
3.3 SQL的数据查询 CREATE SCHEMA TL AUTHORIZATION U1;
3.1 SQL的体系结构
2. SQL模式的撤销
3.4 SQL的数据更新 3.5 视图
DROP SCHEMA <模式名> [CASCADE | RESTRICT] 3.6 嵌入式SQL
CASCADE:该模式下的数据库对象随模式而撤消 RESTRICT:只当该模式下无元素时才可撤消
DROP SCHEMA TL CASCADE;
第三章 关系数据库语言SQL 3.2 SQL的数据定义
3.2.2 基本的数据类型
数据类型 整 数 短整数 十进制数 浮点数 定长字符串 说 明 符 INT SMALLINT 备 字长32位 字长16位 m为总位数(不包括小数点),n为小数位数 一般指双精度浮点数,即字长64位 注
3.2.1 SQL模式的创建和撤销 一、SQL模式的创建和撤销
第三章 关系数据库语言SQL 二、基本数据类型 1. SQL模式的创建 三、基表的创建、修改和撤销 CREATE SCHEMA <模式名> AUTHORIZATION <用户名>
四、索引的创建和撤销 3.2 SQL的数据定义 SQL模式由模式名和拥有者的用户名或帐号确定
查询语言QL ――用于查询数据 数据操纵语言DML――用于增、删、改数据 数据控制语言DCL――用于数据访问权限的控制 完整性规则描述 事务控制等 两种使用方法: 交互式SQL(ISQL)→单独使用的SQL,不能编程

第03章-关系数据库标准语言SQL

第03章-关系数据库标准语言SQL

语句 CREATE
功能 创建数据库或数据库对象
ALTER
修改数据库或数据库对象
DROP
删除数据库或数据库对象
说明 不同数据库对象参数不同 不同数据库对象参数不同 不同数据库对象参数不同
SQL的组成(续) ❖ 数据操纵语言DML(Data Manipulation Language):用于执行对数据库检索和更新。
定义基本表(续)
❖ 表的完整性约束条件 创建表时可指定表的完整性约束条件,也称为约束: 列级完整性约束条件 完整性约束条件涉及到该表的当前一个属性列 表级完整性约束条件 完整性约束条件涉及到该表的一个或多个属性列
➢ RDBMS自动检查对表的操作是否违背表的完整性约束条件
学生表Student
数据库 模式
表 视图
模式 表
索引
定义模式(续)
❖ 基本格式: CREATE SCHEMA [<模式名>] AUTHORIZATION <用户名> CREATE、SCHEMA 、AUTHORIZATION为保留字 保留字习惯使用大写 CREATE SCHEMA 为定义模式的语句 <模式名>为所创建的模式的名称 尖括号表示用户提供的参数 方括号表示参数可选 AUTHORIZATION <用户名> 子句用于指定模式的所有者 <用户名>指定一个用户
❖ 也可以使用带指定参数值的命令创建数据库
3.3 数据定义
3.3.1 模式的定义与删除 3.3.2 基本表的定义、删除与修改 3.3.3 索引的建立与删除
定义模式
❖ 模式(SCHEMA) 定义模式实际上是定义了一个命名空间(或容器)。 在这个空间中可以定义该模式包含的数据库对象 例如基本表、视图、索引、存储过程等。 定义模式能更好的管理数据库中的对象
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
❖ 其中<表名>是所要定义的基本表的名字,它可以由 一个或多个属性(列)组成。<列名>是所要定义的列 的名字,完整性约束条件表示表中数据需要满足的 约束条件。
An Introduction to Database System
3.3.1 基本表的定义、删除与修改(续)
❖ 完整性约束条件被存入系统的数据字典中,当用 户操作表中数据时由DBMS自动检查该操作是否 违背这些完整性约束条件。
3.1.3 SQL的特点
1.综合统一
集数据定义语言(DDL),数据操纵语言(DML), 数据控制语言(DCL)功能于一体。
可以独立完成数据库生命周期中的全部活动:
➢ 定义关系模式,插入数据,建立数据库; ➢ 对数据库中的数据进行查询和更新; ➢ 数据库重构和维护 ➢ 数据库安全性、完整性控制等
3.1 SQL概述 3.2 学生-课程数据库 3.3 数据定义 3.4 数据查询 3.5 数据更新 3.6 视图 3.7 嵌入式SQL
An Introduction to Database System
3.2 学生-课程 数据库
❖学生-课程模式 S-T : 学生表:Student(Sno,Sname,Ssex,Sage,Sdept) 课程表:Course(Cno,Cname,Cpno,Ccredit) 学生选课表:SC(Sno,Cno,Grade)
SQL-99的12个标准文本。目前大多数数据库管理系统均 支持SQL-92(SQL2),有少部分支持SQL-99。 ❖ ANSI在2003年做了更新,针对 SQL-99 的一些问题进行 了改进,支持 XML,支持 Window 函数、Merge 语句等, 称为SQL:2003。 ❖ 2006年发布了SQL:2006,增强 XML 对数据处理的能力。 ❖ 目前最新版本为SQL:2008。毫无疑问,将来还会做进一 步的改良。
An Introduction to Database System
3.1 SQL概述
❖3.1.1 SQL 的产生与发展 ❖3.1.2 SQL数据库的体系结构 ❖3.1.3 SQL的组成 ❖3.1.4 SQL的特点
An Introduction to Database System
3.1.2 SQL数据库的体系结构
An Introduction to Database System
3.1.3 SQL的组成
❖ (4)触发器和高级完整性约束:新的SQL标准包括对触发器 的支持,当对数据库的改变满足触发器的条件时,DBMS 就执行触发器。
❖ (5)嵌入式和动态SQL:嵌入式的SQL特征使得可以从宿主 语言(例如C或者COBOL)中调用SQL代码。动态的SQL特 征允许在运行时构建查询。
表 3.1 SQL 功 能 数据查询 数据定义 数据操纵
数据控制
SQL 语言的动词 动词
SELECT CREATE,DROP,ALTER INSERT,UPDATE DELETE GRANT,REVOKE
An Introduction to Database System
第三章 关系数据库标准语言SQL
用户数据库投入运行后,可根据需要随时逐步修改 模式,不影响数据的运行。
数据操作符统一
An Introduction to Database System
2.高度非过程化
❖ 非关系数据模型的数据操纵语言“面向过程”, 必须制定存取路径
❖ SQL只要提出“做什么”,无须了解存取路径。 ❖ 存取路径的选择以及SQL的操作过程由系统自动
CREATE TABLE Course (Cno number(4) constraint pk_Course primary key, Cname char(20), Cpno number(4), Ccredit number(4));
An Introduction to Database System
数据库系统原理
第三章 关系数据库标准语言 SQL
An Introduction to Database System
第三章 关系数据库标准语言SQL
❖ 本章知识要点
▪ SQL概述 ▪ 数据定义 ▪ 数据查询 ▪ 数据更新 ▪ 视图 ▪ 嵌入式SQL
An Introduction to Database System
❖ SQL是1974年由Boyce和Chamberlin提出的, 1975年至1979年IBM公司研制的DBMS—— System R实现了这种语言。
❖ 经过多年以后,SQL已经成为一种广泛使用的语 言,用于创建、维护和查询关系。
❖ 1986年,美国国家标准局(ANSI)的数据库委员会 批准了SQL作为关系数据库语言的美国标准。
❖3.1.1 SQL 的产生与发展 ❖3.1.2 SQL数据库的体系结构 ❖3.1.3 SQL的组成 ❖3.1.4 SQL的特点
An Introduction to Database System
3.1.3 SQL的组成
❖ (1)数据操作语言(The Data Manipulation Language, DML):该SQL语句允许用户提出查询,以及插入、删除 和修改行。本书这章中将介绍插入、删除和修改行的DML 命令。
①主码约束(续)
❖例3-2 对例3-1的约束改为表级约束。 CREATE TABLE Course (Cno number(4), Cname char(20), Cpno number(4), Ccredit number(4), Constraint pk_Course primary key(Sno));
❖ 如果完整性约束条件涉及到该表的多个属性列, 则必须定义在表级上;
❖ 如果只涉及一个属性列,则既可以定义在列级也 可以定义在表级。在表中,可以指定许多种完整 性约束
An Introduction to Database System
①主码约束
❖例3-1 建立一个课程表Course,由课程号Cno、课 程名Cname、先行课程号Ccpno、学分Ccredit四 个属性组成。
第三章 关系数据库标准语言SQL
3.1 SQL概述 3.2 学生-课程数据库 3.3 数据定义 3.4 数据查询 3.5 数据更新 3.6 视图 3.7 嵌入式SQL
An Introduction to Database System
3.1 SQL概述
❖结构化查询语言SQL (Structured Query Language)是一种介于关系代数与关系演算之间 的语言,其功能包括查询、操纵、定义和控制四个 方面,是一个通用的功能极强的关系数据库标准语 言。
An Introduction to Database System
②外码约束
❖例3-5 一个外码自身参照的例子。
CREATE TABLE Course (Cno number(4) constraint pk_Course primary key, Cname char(20), Cpno number (4) constraint fk_cpno references Course
An Introduction to Database System
SQL概述(续)
❖3.1.1 SQL 的产生与发展 ❖3.1.2 SQL数据库的体系结构 ❖3.1.3 SQL的组成 ❖3.1.4 SQL的特点
An Introduction to Database System
3.1.1 SQL 的产生与发展
An Introduction to Database System
②外码约束
❖例3-4 对例3-3的表级外码约束改为列级。
CREATE TABLE SC (Sno number(12), Cno number(4) Constraint fk_c references Course(Cno), Grade number(3), Constraint pk_SC primary key (Sno,Cno)) ;
❖ (2)数据定义语言(The Data Definition Language DDL): 该SQL语句支持表的创建、删除和修改,支持视图和索引 的创建和删除。完整性约束能够定义在表上,可以是在创 建表的时候,也可以是在创建表之后定义约束。
❖ (3)数据控制语言(Data Control Language,DCL):该SQL 语句的目标是管理用户对数据库对象的访问。
完成。
An Introduction to Database System
3.面向集合的操作方式
❖ 非关系数据模型采用面向记录的操作方式,操作对 象是一条记录
❖ SQL采用集合操作方式
➢ 操作对象、查找结果可以是元组的集合 ➢ 一次插入、删除、更新操作的对象可以是元组的集合
An Introduction to Database System
❖SQL数据库的体系结构基本上也是三级模式。
▪ SQL术语与传统的关系模型术语不同。 ▪ 在SQL中,
• 外模式对应于视图和部分基本表, • 模式对应于基本表,元组称为“行”,属性称为
“列”。 • 内模式对应于存储文件。
An Introduction to Database System
4.1 SQL概述
3.3 数据定义
SQL的数据定义功能: 表定义、视图和索引的定义
操作对象
表 视图 索引
表 3.2 SQL 的数据定义语句
操作方式
创建
删除
CREATE TABLE
DROP TABLE
CREATE VIEW
DROP VIEW
CREATE INDEX
DROP INDEX
修改 ALTER TABLE
An Introduction to Database System
相关文档
最新文档