- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
制造信息技术_DB关系数据库标准语言SQL
引言 SQL(Structured Query Language)语言是1974年由Boyce和Chamberlin提出的 1975~1979年在IBM公司San Jose实验室研制的RDBMS原型System R上实现了这种语言 1986年美国国家标准局(ANSI)批准并公布了SQL标准文本(SQL-86),1987年ISO亦通过此标准 1989年公布了SQL-89标准, 1992年公布了SQL-92标准, 1999年公布了SQL-99标准。目前绝大多数数据库厂家的产品是基于SQL-92标准的 主要内容 视图 SQL的特点 综合统一 高度非过程化 面向集合的操作方式 以同一种语法结构提供两种使用方式 语言简易、易学易用 SQL语言的基本概念 SQL语言支持关系数据库三级模式结构,外模式对应于视图和部分基本表,模式对应于基本表,内模式对应于存储文件 SQL语言的基本概念 基本表 基本表是本身独立存在的表,在SQL中一个关系就对应一个表。一个或多个基本表对应一个存储文件,一个表可以带若干索引,索引也存放在存储文件中 存储文件 存储文件的逻辑结构组成了关系数据库的内模式。存储文件的物理结构是任意的,对用户是透明的 视图 视图是从一个或几个基本表导出的表。数据库中只存放视图的定义而不存放视图对应的数据。视图是一个虚表 SQL的数据定义语句 SQL的数据定义功能包括定义表、定义视图和定义索引。视图是基于基本表的虚表,索引是依附于基本表的,因此,SQL通常不提供修改视图定义和修改索引定义的操作 定义基本表 CREATE TABLE 表名 (数据类型 [列级完整性约束条件] [ , 列名数据类型 [列级完整性约束条件]] ? [ , 表级完整性约束条件]) 修改基本表 ALTER TABLE 表名 [ADD 新列名 数据类型 [完整性约束]] [DROP 完整性约束名] [MODIFY 列名 数据类型]; 删除基本表 DROP TABLE 表名 建立索引 例6 为学生-课程数据库中的Student,Course,SC三个表建立索引。其中Student表按学号升序和课程号降序建唯一索引 CREATE UNIQUE INDEX Stusno ON Student (Sno); CREATE UNIQUE INDEX Coucno ON Course (Cno); CREATE UNIQUE INDEX SCno ON SC (Sno ASC, Cno DESC); 删除索引 DROP INDEX 索引名; SELECT语句的一般格式 (1)根据WHERE子句的条件表达式,从FROM语句指定的基本表或视图中找出满足条件的元组,再按SELECT子句的目标列表达式,选出元组中的属性值形成结果表。 (2)若有GROUP子句,则将结果按列名1的值进行分组,该属性列值相等的元组为一个组。通常会在每组中作用集函数。若GROUP子句带HAVING短语,则只有满足指定条件的组才输出。 (3)若有ORDER子句,则结果还要按列名2的值的升序或降序排列。 学生-课程数据库 单表查询(一、选择表中的若干列) 选择表中的若干列 这是投影运算。在很多情况下用户只需要表中的一部分属性,这时可通过在SELECT子句的目标列表达式中指定要查询的属性 例1 查询全体学生的学号与姓名。 SELECT Sno, Sname FROM Student; 例2 查询全体学生的姓名、学号、所在系。 SELECT Sname, Sno, Sdept FROM Student; 例3 查询全体学生的详细记录。 SELECT * FROM Student; SELECT Sno, Sname, Ssex, Sage, Sdept FROM Student; 单表查询 SELECT子句的目标列表达式还可以是算术表达式、字符串常量、函数等 例4 查全体学生的姓名及其出生年份。 SELECT Sname, 2002-Sage FROM Student; 单表查询(选择表中的若干元组) 选择表中的若干元组 消除取重复值的行,可使用DISTINCT短语。两个本来并不相同的元组,投影到某些列上后,可能变成相同的行了。 例6 查询选修了课程的学生学号。 SELECT Sno FROM SC; 单表查询(选择表中的若干元组) 查询满足条件的元组 查询满足指定条件的元组可通过WHERE子句实现。 (1)比较大小 运算符包括:=、?、?、?、?、? 逻辑运算符NOT可与上面的比较运算符同用,对条件求非 例7 查询计算机系全体学生的名单。 SELECT Sname FROM Student WHERE Sdept=‘CS’; 单表查询(选择表中的若干元组) (2)确定范围 谓词BETWEEN?AND ?和NOT
您可能关注的文档
最近下载
- 《机械装调技术》电子教案 模块五 整机调试与运行任务一 齿轮啮合齿侧间隙的检测与调整.doc VIP
- 青花瓷 完美演奏版 周杰伦 钢琴谱 数字 简谱.pdf VIP
- 第38届物理竞赛决赛实验考试答题纸 .pdf VIP
- 现代医药物流交易的配送中心建设项目可行性研究报告.doc VIP
- 2025-2026学年初中生物学人教版2024八年级上册-人教版2024教学设计合集.docx
- 养生馆卫生管理制度(3篇).docx
- 健康管理师课件第一章--健康管理概论.ppt VIP
- JBT 4333.4-2013 厢式压滤机和板框压滤机 第4部分:隔膜滤板.pdf VIP
- 电信反诈骗演讲稿模板5篇.docx VIP
- 基于光纤布拉格光栅的温度测量系统设计与应用.docx VIP
文档评论(0)