关系数据库标准语言SQL-山西国际商务职业学.PPTVIP

  • 1
  • 0
  • 约1.2万字
  • 约 45页
  • 2018-10-31 发布于天津
  • 举报

关系数据库标准语言SQL-山西国际商务职业学.PPT

关系数据库标准语言SQL-山西国际商务职业学

第6章 关系数据库标准语言 SQL语言概述 SQL数据定义功能 SQL数据更新功能 SQL数据查询功能 查询 6.1 SQL语言概述 6.1.1 SQL语言的发展 6.1.2 SQL的特点 6.1.3 SQL语言的功能 6.1.4 SQL的支持特性 6.1.1 SQL语言的发展 SQL语言是一种面向关系数据库的国际标准语言,在当前数据库领域中应用最为广泛和成功,其近三十年的发展历程主要有以下几个阶段: (1)1974年由Boyce和Chamberlin提出,当时称为SEQUEL(Structured English Query Language)。 (2)1975~1979年IBM公司对SEQUEL进行了修改,并由San Jose Research Laboratory研制了著名的关系数据库管理系统原型System R,实现了这种语言。 (3)1981年IBM推出了商用关系数据库SQL/DS,并将其改名为SQL,由于它功能丰富,语言简洁,因此倍受用户及计算机工业界欢迎,被众多计算机公司和软件公司所采用。 (4)目前SQL语言不仅用于小型数据库如Foxpro、Access,而且更广泛用于各种大型数据库,如Sysbase、SQL Server、Oracle、Informix、DB2、Ingres等。 6.1.2 SQL的特点 综合统一 高度非过程化 面向集合的操作方式 同一种语法结构,两种使用方式 语言简洁易用 6.1.3 SQL的功能 6.1.4 SQL的支持特性 SQL语言支持关系数据库三级模式结构,如图4.1所示。其中外模式对应于视图和部分基表,模式对应于基表,内模式对应于存储文件。 用SELECT实现多表查询 VFP提供了四种联接类型:内部联接、左联接、右联接和完全联接,其中内部联接是最常用的连接方式。 以TEACH和COURSE表为例说明各联接类型的含义和实现方法,公共属性“课程号”是两表间的关联字段,两表内容如图。 1.内部联接(INNER JOIN)查询 实现方法1)使用INNER JOIN和ON子句实现。 SELECT 列名表 FROM 表名1 INNER JOIN 表名2 ON 表名1.关联字段=表名 2.关联字段 实现方法2)在WHERE子句中实现:SELECT 列名表 FROM 表名1, 表名2 WHERE 表名1.关联字段=表名2.关联字段 例:根据表TEACH和COURSE,查询两表公有的教师的授课信息。 SELECT TEACH.教工号,TEACH.课程号,COURSE.课程名,COURSE.课时,COURSE.学分 FROM TEACH INNER JOIN COURSE ON TEACH. 课程号=COURSE. 课程号(图1) 2.左联接(LEFT JOIN)查询 实现方法:使用LEFT JOIN和ON子句实现。 SELECT 列名表 FROM 表名1 LEFT JOIN 表名2 ON 表名1.关联字段=表名2.关联字段 例:根据表TEACH和COURSE,查询所有教师的授课信息,如果某个课程尚未在COURSE表中登记,也要显示出该授课教师的信息。 SELECT TEACH.教工号,TEACH.课程号,COURSE.课程名,COURSE.课时,COURSE.学分 FROM TEACH LEFT JOIN COURSE ON TEACH. 课程号=COURSE. 课程号(图2) 3.右联接(RIGHT JOIN)查询    实现方法:使用RIGHT JOIN和ON子句实现。 SELECT 列名表 FROM 表名1 RIGHT JOIN 表名2 ON 表名1.关联字段=表名2.关联字段 例:根据表TEACH和COURSE,查询所有教师的授课信息,如果某个课程目前没有教师授课,也要显示出该课程的信息。 SELECT TEACH.教工号,TEACH.课程号,COURSE.课程名,COURSE.课时,COURSE.学分 FROM TEACH RIGHT JOIN COURSE ON TEACH. 课程号=COURSE. 课程号(图3) 4.完全联接(FULL JOIN)查询    实现方法:使用FULL JOIN和ON子句实现。 SELECT 列名表 F

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档