第四章结构化查询语言SQL解读.ppt

  1. 1、本文档共113页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 结构化查询语言--SQL 教学要求: 了解本章所有概念的含义; 掌握表、视图、索引的创建与撤消的语句格式及功能; 掌握数据的插入、删除和修改的语句格式及功能; 熟练掌握库查询语句SELECT的各种格式和相应功能。 对于电子商务专业,多表嵌套和谓词查询不作要求。 SQL有多个版本: SQL86、 SQL89 SQL2、 SQL3等。现在SQL几乎被所有关系数据库管理系统所使用。 SQL具有数据定义(DDL)、数据操纵(DML)和数据控制(DCL)功能。(操作命令、窗口界面) SQL的数据定义功能能够定义数据库的三级模式结构。 在SQL中,外模式又叫视图(View),全局模式简称模式(Schema)或数据库(Database),内模式由系统根据数据库模式自动实现,一般无需用户过问。 在SQL中,每个关系又叫基本表(Table),属性又叫字段(Field) 或列(Column),元组又叫行(Row)。 一个数据库由若干个基本表组成,通常一个基本表对应存储在外存数据库空间的一个存储文件中。 每个视图也是一个关系,它由基本表产生出来,有自己独立的结构定义,但没有独立的数据存在,它的数据来自基本表,间接地来自存储基本表的数据存储文件,所以又把视图称为虚表。 SQL的数据操纵功能包括对基本表和视图的数据查询、插入、删除和修改,具有很强的数据查询能力。 对于SQL任一种数据操纵,它的操作对象都是元组的集合,其操作结果也是元组的集合。总之,SQL是一种高度非过程化的面向集合的语言。 SQL的控制功能主要是对用户的访问权限加以控制,以保证系统的安全性。一般由具体系统的数据库管理员使用,负责用户的访问控制工作。 4.1 数据库模式的建立和删除 当需要在计算机中某个关系数据库管理系统之下建立数据库时,首先就要使用数据库模式的建立命令定义数据库名,即模式名,然后在其中定义各个基本表、视图等有关对象。 CREATE {SCHEMA|DATABASE} 数据库名 [AUTHORRIZATION 所有者名 ] 语句功能:在系统中建立一个只有名字的空数据库,并定义出它的所有者名。 语句说明:语句关键字、标识符、字符串常量。 4.1.1 建立数据库模式 语句举例: Create schema xuesh authorization 刘勇 Create database 教学库 当前数据库、默认数据库 默认所有者名为dbo。 DROP {SCHEMA|DATABASE} 数据库名 语句功能:在系统中删除一个数据库。同时删除库中的所有信息。 语句举例: Drop database xuesh 4.1.2 删除数据库模式 4.2 表结构的建立、修改和删除 在系统中命名了一个关系数据库之后,接着就要在其中建立关系数据库模式设计中的每个关系(表)。 CREATE TABLE [数据库名 所有者名] 基本表名 (列定义,…[,表级完整性约束,…]) 语句功能:在当前或给定的数据库中定义一个表的结构(关系模式)。 语句说明:每个列的名字是一个用户定义的标识符,列名后面跟着其数据类型的描述。四种P75。 4.2.1 建立表结构 语句说明: 每个列后面的完整性约束称为列级完整性约束。六种P75。 表级完整性约束在所有列定义后给出。四种P75。 除默认值约束和空值/非空值外,对于其他约束,若只涉及到一个列时,则既可以作为列级完整性约束,又可以作为表级完整性约束,当然只能取其一使用,若涉及到多个列时,则只能作为表级完整性约束来定义。 语句举例:p76 Create table 学生( 学生号 char(7) primary key , 姓名 char(6) not null unique , 性别 char(2) not null check(性别=‘男’ or 性别=‘女’ ), 出生日期 datetimr check (出生日期‘1993-12-31’), 专业 int check (年级= 1 and 年级=4) ) 语句举例:p76 Create table 课程( 课程号 char(4) primary key , 课程名 char(10) not null unique , 课程学分 int check (课程学分=1 and课程学分=6) ) 语句举例:p76 Create table 选课( 学生号 char(7), 课程号char(10) not null unique , 成绩 int check (成绩=0 and 成绩=100) , Primary key (学生号,课程号), Foreign key (学生号) references 学生 (学生号), Foreign key (课程号) references 课程 (课

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档