第三章-关系数据库标准语言SQL
时间:2025-07-13
时间:2025-07-13
系数据库标准语言SQL
第三章
关系数据库语言SQL
系数据库标准语言SQL
3.1
SQL概述
结构化查询语言( Structured Query Language,SQL ):一个关系数据库语言,它 的操作对象是以表的形式存放在关系数据库系统 中的数据。
当前主流的数据库管理系统,如Oracle、SQL server等,都是基于SQL语言的。 SQL具有通用性,功能介于关系代数与关系演算 之间。2013-7-15 2
系数据库标准语言SQL
SQL的产生与发展 1970年,美国IBM研究中心的E.F.Codd连续发表多 篇论文,提出关系模型。 1972年,IBM公司开始研制实验型关系数据库管理系 统SYSTEM R,配制的查询语言称为SQUARE (Specifying Queries As Relational Expression ) 语言,在语言中使用了较多的数学符号。 1974年,Boyce和Chamberlin把SQUARE修改为 SEQUEL (Structured English QUEry Language ) 语言。后来SEQUEL简称为SQL (Structured Query Language ),即“结构式查询语言”,SQL的发音仍 为“sequel”。 现在SQL已经成为一个标准 。2013-7-15 3
系数据库标准语言SQL
SQL数据库的体系结构SQL用户
用户1
用户2
用户3
用户4
外模式
视图1
视图1
模式
基本表1
基本表2
基本表3
基本表4
内模式
存储文件1
存储文件2
存储文件3
存储文件4
图3-12013-7-15
SQL对RDBMS模式的支持4
系数据库标准语言SQL
SQL语言的主要特点如下 1. 综合统一 2. 高度非过程化 3. 面向集合的操作方式 4. 以同一种语法结构提供两种使用方式 5. 语言简洁,易学易用
2013-7-15
系数据库标准语言SQL
1、综合统一 SQL语言集数据定义语言DDL、数据操纵语言DML、 数据控制语言DCL功能于一体,语言风格统一,可独 立完成数据库生命周期中的全部活动。 如:定义关系模式、建立数据库、查询、更新、维护、 数据库重构、数据库安全控制等 2、高度非过程化 “怎么做” “做什么” 减轻了用户的负担,有利于提高数据独立性2013-7-15 6
系数据库标准语言SQL
3、面向集合的操作方式 非关系数据模型:面向记录 SQL:集合操作 4、以同一种语法结构提供两种使用方式 可联机交互操作, 可以嵌入到高级语言中
2013-7-15
系数据库标准语言SQL
5、语言简洁,易学易用 9个动词表 3.1 SQL 功 能 数 据 定 义 数 据 查 询 数 据 操 纵 数 据 控 制2013-7-15
SQL 语言的动词 动 词 CREATE, DROP, ALTER SELECT INSERT,UPDATE DELETE GRANT,REVOKE8
系数据库标准语言SQL
3.2
数据定义
SQL语言可定义 外模式…………………视图 概念模式………………表、约束及索引表 3.2 操 作 对 象 表 视 索2013-7-15
SQL 的数据定义语句 操 作 删 方 除 式 修 改
创
建
图 引
CREATE TABLE CREATE VIEW CREATE INDEX
DROP TABLE DROP VIEW DROP INDEX
ALTER TABLE
系数据库标准语言SQL
3.2.1 基本表的定义、修改与删除1、定义基本表CREATE TABLE <表名> (<列名> <数据类型>[ <列级完整性约束条件> ] [,<列名> <数据类型>
[ <列级完整性约束条件>] ] … [,<表级完整性约束条件> ] );
<表名>:所要定义的基本表的名字 <列名>:组成该表的各个属性(列) <列级完整性约束条件>:涉及相应属性列的完整性约束条件 <表级完整性约束条件>:涉及一个或多个属性列的完整性约 束条件2013-7-15 10
系数据库标准语言SQL
列级约束的种类主码约束----PRIMARY KEY 唯一约束----UNIQUE 该列不允许出现重复的属性值 非空值约束----NOT NULL或NULL 字段的值非空或空 关系的主键必须指定为NOT NULL 参照完整性约束----FOREIGN KEY(外码约束) 定义不同关系表之间的参照完整性 [CONSTRAINT <约束名>] FOREIGN KEY REFERENCES <被参照表名>(<与外码 对应的主码名>) 2013-7-15 11
系数据库标准语言SQL
域完整性约束----CHECK 为该列设置应满足的条件 [CONTRAINT<约束名>]CHECK(<约束条件表达式>) 默认约束----DEFAULT 为该列的属性值设置一个默认值 [CONTRAINT <约束名>] DEFAULT <默认值>
2013-7-15
系数据库标准语言SQL
表级约束的种类唯一约束 指定若干列不允许出现有重复的属性值 [CONSTRAINT <约束名>] UNIQUE(<列组>)
主码约束 指定主键不空,也不允许重复出现 [CONSTRAINT <约束名>] PRIMARY KEY (< 列组>)
2013-7-15
系数据库标准语言SQL
参照完整性约束(外键约束) 定义不同关系表之间的参照完整性 [CONSTRAINT <约束名>] FOREIGN KEY (<外码>)REFERENCES <被参照表名> (<与外码对应的主码名>) 域完整性约束 为该列设置应满足的条件 [CONSTRAINT<约束名>]CHECK(<约束条 件表达式>)2013-7-15 14
系数据库标准语言SQL
SQL中,域的概念用数据类型来实现。 定义表的各个属性列时需指明其数据类型及长度 (或精度)。
2013-7-15
系数据库标准语言SQL
SQL数据类型常用数据类型 含义长度为n的定长字符串最大长度为n的变长字符串 长整数(也可以写作INTEGER) 短整数 十进制数,由p位数字(不包括符 …… 此处隐藏:667字,全部文档内容请下载后查看。喜欢就下载吧 ……
上一篇:中药微生态制剂提高猪免疫力
下一篇:3.0第三部分—临时用电