关系数据库语言SQL

关系数据库语言SQL

ID:39842341

大小:363.60 KB

页数:246页

时间:2019-07-12

关系数据库语言SQL_第1页
关系数据库语言SQL_第2页
关系数据库语言SQL_第3页
关系数据库语言SQL_第4页
关系数据库语言SQL_第5页
资源描述:

《关系数据库语言SQL》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三章关系数据库语言SQL3.1SQL概述3.2数据定义3.3查询3.4数据更新3.5视图3.6数据控制结构化查询语言SQLSQL介于关系代数与关系演算之间SQL集数据查询、数据操纵、数据定义和数据控制功能于一体。1、综合统一(DDL,DML,DCL)2、高度非过程化3、面向集合的操作方式4、两种使用方式使用统一的语法格式5、语言简便易学1、综合统一SQL集DDL、DML、DCL功能于一体。SQL数据操作符的统一。(查询、插入、删除、修改都只有一种操作符。)2、高度非过程化SQL进行数据操作,只要提出“Whattodo”,无

2、需告诉系统“Howtodo”充分体现关系系统的特点和优势有利于提高数据的独立性3、面向集合的操作方式关系运算“一次一集合”方式的体现。4、两种使用方式使用同一种语法结构既是自含式语言,又是嵌入式语言。5、语言简便易学SQL设计巧妙,核心功能只需9个动词。在语言上接近英语。SQL对象与三级模式结构的对应关系外模式--视图、部分基本表模式--基本表内模式--存储文件SQL视图1视图2基本表1基本表2基本表3基本表4存储文件1存储文件2外模式模式内模式T-SQL的定义功能对基本表、视图、索引的定义、删除和修改。基本表是本身独立存在

3、的表,在SQL中一个关系就对应一个表。一些DBMS中一个基本表对应一个存储文件,有的DBMS一个数据库中的多个基本表对应一个存储文件一个表可以带若干索引,索引也存放在存储文件中.定义删除和修改基本表一、基本表的定义CREATETABLE<表名>(<列名><数据类型>[列名完整性约束条件][,<列名><数据类型>[列名完整性约束条件]]...[,<表级完整性约束条件>])完整性约束:NOTNULL:属性值不能取空值(不用于表级)DEFAULT:给定列的默认值(不用于表级)UNIQUE:属性值唯一(不唯一)PRIMARYKEY(

4、列名)CHECK(验证条件):例如CHECK(AGE>16)FOREIGNKEY(列名)REFERENCE<表名2>(表名2.列名)例:建立一个学生数据库,里面包括三个基本表:学生表(Student),课程表(Course),以及选修表(SC)。列名说明数据类型约束Sno学号字符(4)主键Sname姓名字符(10)非空Sgender性别字符(2)取‘男’或‘女’Sage年龄整数取值15~45Sdept院系字符(20)默认‘计算机系’Student列名说明数据类型约束Cno课程号字符(3)主键Cname课程名字符(20)非空T

5、eacher教师字符(10)非空Course列名说明数据类型约束Sno学号字符(4)外键Cno课程号字符(3)外键Grade成绩整数取0~100SC定义学生表的基本SQL语句如下:CREATETABLEStudent(SnoCHAR(4)PRIMARYKEY,SnameVARCHAR(10)NOTNULL,GenderCHAR(2)CHECK(Gender=‘男’ORGender=‘女’),AgeINTCHECK(Age>=15ANDAge<=45),DeptVARCHAR(20)DEFAULT‘计算机系’)CREATETA

6、BLECourse(CnoCHAR(3)CnameVARCHAR(10)NOTNULL,TeacherVARCHAR(10)NOTNULL,PRIMARYKEY(Cno))定义课程表的基本SQL语句如下:CREATETABLESC(SnoCHAR(4)NOTNULL,CnoCHAR(3)NOTNULL,GradeINTCHECK(Grade>=0ANDGrade<=100),PRIMARYKEY(Sno,Cno),FOREIGNKEY(Sno)REFERENCESStudent(Sno),FOREIGNKEY(Cno)REF

7、ERENCESCourse(Cno))定义选修表的基本SQL语句如下:约束更完整的形式:CREATETABLESC(SnoCHAR(4),CnoCHAR(3),GradeINT,CONSTRAINTPK_sno_cnoPRIMARYKEY(Sno,Cno),CONSTRAINTFK_snoFOREIGNKEY(Sno)REFERENCESStudent,CONSTRAINTFK_cnoFOREIGNKEY(Cno)REFERENCESCourse,CONSTRAINTCK_gradeCHECK(Grade>=0andGrad

8、e<=100));二、修改基本表ALTERTABLE<表名>[ALTERCOLUMN<列名><新数据类型>][ADD[COLUMN]<列名><数据类型>[约束]][DROPCOLUMN<列名>][ADDPRIMARYKEY(列名[,…N])][ADDFOREIGNKEY(列名)REFERE

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。