电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

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

147页
  • 卖家[上传人]:F****n
  • 文档编号:107564556
  • 上传时间:2019-10-20
  • 文档格式:PPT
  • 文档大小:1.13MB
  • / 147 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第3章 SQL语言,学习目标 了解SQL的基本构成 掌握SQL的数据定义语言 掌握SQL语言的各种查询的实现 掌握SQL语言的数据更新语言 掌握视图的定义及其应用,3.1 SQL概述,SQL(Structured Query Language,结构化查询语言),是定义和管理关系数据库的国际标准的编程语言。 SQL于1974年由Boyce和Chamberlin提出的,并于19741979年由IBM公司的San Jose Research Laboratory研制了关系数据库管理系统System R上实现了这种功能。,3.1.1 SQL的发展,SQL语言是定义和管理关系数据库的国际标准的编程语言。所经历的主要阶段如下: 1986年,ANSI的数据库委员会发布了文件:X.135-1986数据库语言(简称SQL-86) 。 1987年,ISO也通过了这一标准。 1989年10月,ANSI的数据库委员会发布了文件:X3.135-1989数据库语言-完整和增强的SQL(简称SQL-89) 发布,SQL89成为DBMS遵循的新标准。 1992年8月, ANSI和ISO共同发布了SQL-92 (简称S

      2、QL-2) 标准。,1999年, ISO发布了SQL-99 (简称SQL-3) 标准。 2003年, ISO发布了SQL-2003 (简称SQL-4) 标准。,3.1.2 SQL的特点,SQL是一个集数据查询、数据操纵、数据定义和数据控制于一体数据库管理系统语言。主要特点有: 综合统一。利用SQL可以独立完成数据库生命周期中的全部活动; 高度非过程化。利用SQL实现对关系的操作,用户只需提出“干什么”, 无需规定“如何干”;即不需要指定操作过程,也不需要了解存取路径; 面向集合的操作方式。 一种(语法)结构两种使用方式,表现在: 联机使用方式:即自主式语言;,嵌入式使用方式:即SQL语句嵌入到某种高级语言的程序中使用。 语言简洁,易学易用。SQL功能强大且具有两种不同的使用方式,但语言十分简洁,完成核心功能的语句仅仅只有9个,如下表3-1所示。,表3-1 SQL语言的动词,3.1.3 SQL的组成,SQL语言主要由以下几部分构成: 1 数据定义功能 即SQL的模式语句,主要有: 模式的定义、修改、删除功能; 索引的定义、修改、删除功能; 视图的定义、删除功能; 存储过程、触发器等的定义

      3、、修改、删除功能; 各种完整性约束条件的定义及核查机制。,2 数据操纵功能 即SQL的数据操作语句,主要有: 基于关系代数和元组演算的数据查询和数据更新(插入、修改和删除)语句; 嵌入式SQL的数据操作语句; 事务及其控制语句; 3 数据控制功能 关系、视图的访问权限的设置、取消及核查; SQL的连接语句; 其它的控制功能语句。,3.1.4 SQL查询的基本概念,SQL支持关系数据库的三级模式结构,如下图3-1所示。, 基本表(Table):是独立存在的表,一个关系对应一个基本表,表中保存同一实体集中各实体的数据。一个或多个基本表对应一个存储文件。一个基本表可以定义若干索引,索引也存储在存储文件中。 视图(View):是由基本表或视图导出的虚表,本身不存储实际的数据。在数据库中存储的只是视图的定义。从用户的角度,视图和基本表在概念上是等价的。 除此之外,SQL中还有导出表,即查询结果集。是根据基本表或视图查询得到的结果集。 约束和断言(Constraint And Assertion):是标识有效数据集合的命名规则。它们为表、行或域(列)限定了相容的数据;并定义了两个检查特性:延迟模式

      4、和约束核查时间。,断言是与一些模式有关;常以核查约束的形式出现; 约束是与一些表或域有关。在实际的DBMS产品中常以核查约束或规则的形式出现。 触发器(Trigger):是与单一基本表相关联的命名规则。每个触发器定义一个触发器事件,规定了对表进行更新操作时在表中产生的一个触发动作;触发时间规定了被触发动作发生的时间是在触发事件之前或之后。 SQL调用例程(SQL Invoked Routine):SQL调用例程是有一些模式或模块组成。 由系统定义:称为调用例程或过程; 由用户定义:称为自定义函数或存储过程。,SQL中要定义的数据对象有许多,基本的有:基本表、视图、索引等,这些都由SQL的数据定义语句来实现如下表3-2。先讨论基本表和索引的相关定义语句。,3.2 SQL的数据定义语言,表3-2 SQL的数据定义语句,根据实验将要使用的具体的DBMS产品是SQL Server,详见补充1。,3.2.1 数据库的定义、删除与修改,1 数据库的创建 使用Transact-SQL语句 CREATE DATABASE ON , n , n LOG ON , n COLLATE 其中:, := PR

      5、IMARY ( NAME = , FILENAME = OS文件的路径及名字 , SIZE = 文件初始大小 , MAXSIZE = 最大值 | UNLIMITED , FILEGROWTH = 文件大小增量值 ) := FILEGROUP ,例1: Create Database sale_management_data On Primary ( Name=sale_file1, Filename=e:sale_systemdatasale_file1.mdf, Size= 100MB, MaxSize=2000MB, FileGrowth = 10MB ), ( Name=sale_file2, Filename =e:sale_systemdatasale_file2.ndf, Size = 10MB, MaxSize = 1000MB, FileGrowth = 10),Log on ( Name =sale_log, Filename =f:sale_systemdatasale_log.ldf, Size = 10MB, MaxSize = 1000MB, FileGrow

      6、th = 10MB ) 说明: Database_name:要建立的数据库的逻辑名称。要求:整个SQL Server服务器唯一;长度不超过128个字符。 ON与LOG ON :指定数据库的数据文件、文件组和日志文件。当有多个数据文件或日志文件是,彼此之间要用“,”分隔。对于关键字PRIMARY,若有,指定其后的的数据文件属于主文件组;若没有,则第一个数据文件是主文件。, SIZE参数:指定数据文件或日志文件的初始大小。单位可以是KB、MB、GB、TB。对主数据文件,其最小值应等于model数据库中主数据文件的大小。若省略时,默认数据文件和日志文件大小为1MB(主数据文件除外)。 MAXSIZE参数:指定数据文件或日志文件可以增加到的最大容量。若省略时,默认到磁盘空间用尽为止(相当于MAXSIZE = UNLIMITED ) 。 FILEGROWTH参数:指定数据文件或日志文件的空间的每次增长量。有绝对增长量(不能小于64KB)和相对增长量两种方式。,2 数据库的修改 数据库创建完毕后,可能根据需要须修改数据库本身的各项设置,主要包括: 更改数据库名称 扩充数据文件或日志文件空间; 收缩

      7、数据文件或日志文件空间; 添加或删除数据文件或日志文件; 创建文件组; 改变默认文件组; 更改数据库的配置设置; 更改数据库的所有者。,使用Transact-SQL语句 ALTER DATABASE ADD FILE , n TO FILEGROUP | ADD FILEGROUP | ADD LOG FILE , n | REMOVE FILE | REMOVE FILEGROUP | MODIFY FILE | MODIFY NAME = | MODIFY FILEGROUP filegroup_property |NAME= ,其中: := ( NAME = , NEWNAME = , FILENAME = OS文件的路径及名字 , SIZE =文件的初始大小 , MAXSIZE =最大的文件容量 , FILEGROWTH = 文件大小增量 ) 说明: 注意各功能子句的作用; 与“创建数据库”基本相同,仅多了一个“NEWNAME”项。, MODIFY FILE子句:修改指定的数据文件。每次修改时,只能修改FILENAME、SIZE、FILEGROUP、MAXSIZE属性中的一项。

      8、 使用该命令改变数据文件容量时,只能增加不能减少。,3 数据库的删除 使用Transact-SQL语句 DROP DATABASE , 在SQL Server中,只有数据库所有者和sysadmin、dbcreator固定服务器角色才有权限删除数据库。 当删除数据库时,其数据文件和事务日志文件也会同时被删除。,建立数据库后最重要的一类定义就是定义基本表,首先介绍SQL-3中的数据类型,如表3-3所示。,3.2.2 基本表的定义、删除与修改,表3-3 SQL-3中的数据类型,1 基本表的定义 语法格式: CREATE TABLE ( , ) = , , = (,) DEFAULT NOT NULL UNIQUE CONSTRAINT () =PRIMARY KEY (),FOREIGN KEY () REFERENCES () CHECK (expL) ,说明: DEFAULT :默认值设定。当有该选项时,在进行数据插入时若没有指定该列的值时,就自动取为默认值; NOT NULL:是否允许空值设定。当有该选项时,在进行数据插入时必须为该列指定具体值; UNIQUE:值的唯一性设定。当有该选

      9、项时,整个表中该列值唯一; CONSTRAINT ():列级完整性设定。列级完整性是一个条件表达式。 若有该选项时,则在对该列数据进行更新时其值必须满足相应的条件。,若在该列上定义了几个约束,则该列的取值必须是几个条件表达式所限定值集的交集。 表级完整性约束主要有三类: PRIMARY KEY ():主码约束设定。用来定义表中所有的记录必须满足的实体完整性;一个表只能有一个主码。 FOREIGN KEY () REFERENCES (:外码约束设定。用来定义表中的外码以及外码引自于哪个表;一个表可以有多个外码。 CHECK (expL):核查约束设定。用来定义表中同一记录内不同的属性之间必须满足的依赖(函数)关系。,基本表定义举例 例:学生-选课数据库中的四个表的定义。 专业设置表(专业编号,系名,专业名) ; 学生情况表(学号,姓名,性别,出生日期,入学年份,专业编号) ; 课程设置表(课程编号,课程名称,学时数,学分,先修课程号) ; 学生选课(学号,课程编号,成绩) 。,CREATE TABLE Major( major_no CHAR(3) NOT NULL CONSTRAINT major_const(major_no like 1-90-90-9 and major_no not like 100), department VARCHAR(30) NOT NULL, speciality VARCHAR(30) NOT NULL, PRIMARY KEY (major_no) ) CREATE TABLE Student( sno CHAR(10) NOT NULL CONSTRAINT sno_const(sno like 1-90-90

      《第3章.关系数据库标准语言》由会员F****n分享,可在线阅读,更多相关《第3章.关系数据库标准语言》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.