06_SQL基.pptVIP

  1. 1、本文档共139页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
06_SQL基

SQL基础 单世民 SQL概述 SQL是一种介于关系代数与关系演算之间的结构化查询语言。SQL是一个通用的、功能极强的数据库语言。 SQL集数据查询(data query)、数据操作(data manipulation)、数据定义(data definition)、数据控制(data control)于一体。 SQL概述 SQL语言包括的内容 SQL DDL:定义关系模式、删除关系、建立索引以及修改关系模式; SQL DML:查询、插入、删除和修改; 嵌入式DML:嵌入在Pascal、C等宿主语言; 视图定义:创建视图; 权限管理:对关系和视图的访问进行授权; 完整性:定义数据必须满足的完整性约束条件; 事务控制:定义事务的开始、提交、和结束等。 数据定义与操纵 SQL数据定义语言 基本的数据库对象: 表(table)、视图(view)、索引(index) 基本表的创建 SQL数据定义语言 基本表的创建-说明 建表的同时可以定义与该表有关的完整性约束,这些约束条件被存入系统的数据字典中,当用户操作表时,DBMS会自动检查该操作是否有违背完整约束条件. 建立约束的考虑:如果完整性约束条件涉及到该表的多个属性列,则必须定义在表级上;否则既可以定义在列级上也可以定义在表级上。 表名、列名是不区分大小写的。 对一个用户而言,表名必须唯一;一个表中,列名必须唯一。 表名、列名必须以字母开头,长度不超过30个字符。 SQL数据定义语言 例:创建一个学生表 建立一个“学生”表Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成。其中学号不能为空,值是唯一的,并且姓名取值也唯一。 SQL数据定义语言 练习 创建一个课程表 建立一个“课程”表Course,它由课程号Cno、课程名Cname、先行课Cpno、学分Ccredit四个属性组成。其中课程号不能为空,值是唯一的,并且课程名取值也唯一。 SQL数据定义语言 常用完整性约束 主码约束: PRIMARY KEY 唯一性约束:UNIQUE 非空值约束:NOT NULL 参照完整性约束:FOREIGN KEY SQL数据定义语言 SQL数据定义语言 SQL数据定义语言 例:建立一个“学生选课”表SC,它由学号Sno、课程号Cno,修课成绩Grade组成,其中(Sno, Cno)为主码。 SQL数据定义语言 删除基本表 练习: 删除Student表 SQL数据定义语言 修改基本表-添加列 例: 向Student表增加“入学时间”(SCome) ,数据类型为日期型。 SQL数据定义语言 修改基本表-改变列的数据类型 例: 将年龄的数据类型改为半字长整数。 SQL数据定义语言 修改基本表-删除完整性约束 例: 删除学生姓名必须取唯一值的约束。 数据操纵语言 插入数据 两种插入数据方式 插入单个元组 插入子查询结果(参见子查询内容) 数据操纵语言 插入数据-单条数据 INTO子句 指定要插入数据的表名及属性列,属性列的顺序可与表定义中的顺序不一致。 若未指定属性列:表示要插入的是一条完整的元组,且属性列属性与表定义中的顺序一致。否则,若指定部分属性列:插入的元组在其余属性列上取空值 VALUES子句 提供的值必须与INTO子句匹配 值的个数 值的类型 数据操纵语言 例:将一个新学生记录(学号:95020;姓名:陈冬;性别:男;所在系:IS;年龄:18岁)插入到Student表中。 例:插入一条选课记录( 95020,1 )。 数据操纵语言 修改数据 三种修改方式 修改某一个元组的值 修改多个元组的值 带子查询的修改语句(参见子查询内容) 数据操纵语言 修改数据 例:将学生95001的年龄改为22岁。 例:将所有学生的年龄增加1岁。 例:将信息系所有学生的年龄增加1岁 数据操纵语言 删除数据 三种删除方式 删除某一个元组的值 删除多个元组的值 带子查询的删除语句(参见子查询内容) 数据操纵语言 删除数据 例:删除学号为95019的学生记录。 例:删除2号课程的所有选课记录。 例:删除所有的学生选课记录。 数据查询 数据查询 基本语法 示例数据库 学生-课程数据库 学生表:Student(Sno,Sname,Ssex,Sage,Sdept) 课程表:Course(Cno,Cname,Cpno,Ccredit) 学生选课表:SC(Sno,Cno,Grade) 单表查询 基本含义 查询仅涉及一个表,是一种最简单的查询操作 选择表中的若干列 选择表中的若干元组 对查询结果排序 使用集函数 对查询结果分组 单表查询 例:查询全体学生的学号与姓

文档评论(0)

kejie8080230 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档