[高等教育]第4章 结构化查询语言.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[高等教育]第4章 结构化查询语言

第4章 结构化查询语言 4.1 SQL语言概述 SQL是structured query language的缩写,即结构化查询语言,它既可以用于大型数据库系统,也可以用于微型数据库系统,是关系数据库的标准语言。VF6数据库管理系统,除了具有VF6命令以外,还支持结构化查询语言(SQL)命令。 4.1.1 SQL语言的特点 SQL语言之所以成为数据库标准语言,因具有以下特点。 1.综合统一 SQL语言集数据库定义语言(DDL)、数据操纵语言(DML,数据操纵包括数据查询)、数据控制语言(DCL)的功能于一体,可以独立完成数据库生命周期中的全部活动,包括定义数据库和表结构、录入数据及建立数据库、查询、更新、维护、数据库重构、数据库安全性控制等一系列操作的要求,这就为数据应用系统的开发提供了良好的环境。 2.高度非过程化 用SQL语言进行数据操作时,用户只需要提出做什么,而不必指明怎么做。这不但大大减轻了用户的负担,而且还有利于提高数据独立性。 3.面向集合的操作方式 SQL语言采用集合操作方式,不仅查找结果可以是记录的集合,而且操作对象的一次插入、删除、更新也可以是记录的集合。 4.以同一种语法结构提供两种使用方式 SQL语言既是自含式语言,又是嵌入式语言。作为自含式语言,它能够独立地用于联机交互的使用方式,用户可以在键盘上直接输入SQL命令对数据库进行操作。作为嵌入式语言,SQL能够嵌入到高级语言(例如C、FORTRAN、PL/I)程序中,供程序员设计程序时使用。而在两种不同的使用方法下,SQL语言的语法结构基本上是一致的。这种以统一的语法结构提供两种不同的使用方法的做法,为用户提供了极大的灵活性与方便性。 5.功能强大,语言简洁,易学易用 SQL语言语法十分简单,总共只用了9个命令动词(见表4.1),但是能实现数据定义、数据操作、数据控制等功能。 表4.1 SQL的动词及功能划分 SQL功能 命令动词 数据定义 CREATE,DROP,ALTER 数据操作 UPDATE,DELETE,INSERT 数据控制 GRANT,REVOTE 数据查询 SELECT 4.1.2 数据定义语言 数据定义语言由CREAT、DROP、ALTER命令组成。这3个命令关键字针对不同的数据库对象(如数据库、查询、视图等)分别有3个命令。例如针对表对象的3个命令是建表结构命令CREAT TABLE、修改表结构命令ALTER TABLE、删除表命令DROP TABLE。数据库可操作多少个对象就有多少3个相应的命令。下面以定义表结构为例,讲解这3个命令。 1.建立表结构命令CREAT TABLE 命令的语法与功能详见3.2.5节。 【例4.1】使用命令建立“研究生”自由表,其表结构及要求如表3.2所示。 表4.2 研究生表的结构及要求 字段名 字段 类型 字段 长度 小数 位数 特殊 要求 字段名 字段 类型 字段 长度 小数 位数 特殊 要求 学号 C 7 年龄 N 3 姓名 C 8 入学年月 D 允许为空值 性别 C 2 定义该表的SQL命令如下 CREATE TABLE d:\教学管理\研究生 FREE (学号 C(7),姓名 C(8),性别 C(2),; 年龄 N(3),入学年月 D NULL) 【例4.2】使用命令建立数据库XSK,然后在该库中建立student表,其表结构及要求如表4.3所示。 表4.3 student表的结构及要求 字段名 字段 类型 字段 长度 小数 位数 特殊 要求 字段名 字段 类型 字段 长度 小数 位数 特殊 要求 学号 C 7 主索引 是否党员 L 姓名 C 8 不能不空值 入学年月 D 允许为空值 性别 C 2 备注 D 禁止转换 年龄 N 3 大于10小于45 定义该表的SQL命令如下 CREAT DATABASE xsk CREAT TABLE student(学号 C(7) PRIMAY KEY,姓名 C(8) NOT NULL,性别C(2),; 年龄 N(3) CHECK 年龄10 AND 年龄45 ERROR 年龄范围在10~45,请重输入! ,; 是否党员 L,入学年月 D DEFAULT CTOD(09/01/2001), 备注 M NOCPTRANS) 【例4.3】在XSK库中建立score表,其表结构及要求如表4.4所示。 表4.4 score表的结构及要求 字段名 字段 类型 字段 长度 小数 位数 特殊 要求 学号 C 7 外关键字,与student表建立关系 课号 C 5 外关键字,与course表建立关系(course表结构及建立参见第3章的“课程”表) 期末 N 5

文档评论(0)

ctuorn0371 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档