当前位置: 首页 > >

结构化查询语言SQL基础

SQL是结构化查询语言Structured Query Language的缩写, 是关系数据库的标准语言。虽然绝大多数的关系数据库管理系统 都支持SQL,但是它们有各自特有的扩展功能用于自己的系统。 VFP数据库管理系统中除了具有VFP命令之外还支持SQL命令。由 于SQL命令利用Rushmore技术实现优化处理,一条SQL命令可以替 代多条VFP命令。 目录 5.1 SQL概述 5.2 数据定义功能 5.3 数据操纵功能 5.4 查询功能 5.1 SQL概述 5.1 SQL概述(续1) SQL标准于1986年10月由美国ANSI公布,随后1987 年6月国际标准化组织ISO将SQL定为国际标准,推荐它成 为标准关系数据库语言。1990年,我国颁布了《信息处 理系统数据库语言SQL》,将其定为中国国家标准。 5.1 SQL概述(续2) SQL语言具有如下主要特点: ⑴ SQL是一种一体化语言,包括数据定义、数据查询、 数据操纵和数据控制等功能; ⑵ SQL是一种高度非过程化语言,用户只需告诉系统 “做什么”,无须描述“怎么做”; ⑶ SQL语言功能极强,但是非常简洁,完成数据定义、 数据查询、数据操纵和数据控制等功能只用了为数不多的几 个动词,并且SQL的语法也非常简单,接*英语自然语言。 易学易用是SQL最大的特点; ⑷ 可以用直接采用交互方式使用,也可以嵌入程序设计 语言在程序方式下使用。 5.1 SQL概述(续3) 尽管SQL功能强大,但是概括起来,可以分成以下几组: ·数据操作语言DML(Data Manipulation Language):用 于检索或者修改数据; ·数据定义语言DDL(Data Definition Language): 用 于定义数据的结构,比如创建、修改或者删除数据库对象; ·数据控制语言DCL(Data Control Language):用于定义 数据库用户的权限。 5.1 SQL概述(续4) VFP在SQL方面支持数据定义、数据查询和数据操 纵功能,但在具体实现方面也存在一些差异,如没有 提供数据控制功能,不支持多层嵌套查等。在VFP环 境下,SQL命令既可以在命令窗口直接执行,也可以 写入.PRG文件中执行。 返回 返回目录 5.2 数据定义功能 5.2 数据定义功能 SQL的数据定义命令主要包括CREATE(定义表结 构)、DROP(删除表)和ALTER(修改表结构)等命令。 5.2 数据定义功能 5.2.1 定义表结构 5.2.3 删除表 5.2.1 定义表结构 (续1) 【语法格式】 CREATE TABLE|DBF <表名1> [NAME <长表名>] [FREE] (<字段名1> <类型>(<宽度>[,<小数位数>])[NULL|NOT NULL] [CHECK <约束条件1>[ERROR <出错提示信息1>]] [DEFAULT <默认值1>] [PRIMARY KEY|UNIQUE] [REFERENCES <表名2> [TAG <索引标识1>]] [,<字段名2> <类型>(<宽度>[,<小数位数>]) [NULL|NOT NULL] [CHECK <约束条件2>[ERROR <出错提示信息2>]] [DEFAULT <默认值2>] [,PRIMARY KEY <索引表达式2> TAG <索引标识2> |,UNIQUE <索引表达式3> TAG <索引标识3>] [,FOREIGN KEY <索引表达式4> TAG <索引标识 4>]REFERENCES <表名3>[TAG <索引标识5>]] …) 5.2.1 定义表结构(续2) 【功能】 创建自由表或数据库表、建立索引、定义域完整性和表间的联 系。CREATE TABLE命令可以实现表设计器的全部功能;关键字 TABLE和DBF的作用相同,TABLE是标准SQL的关键字,DBF是VFP 的关键字;SQL CREATE命令建立的表自动在最低可用工作区打 开,新表的打开方式为独占方式,不受SET EXCLUSIVE设置影响。 【说明】 FREE:选择该选项,则新建表不添加到当前数据库,成为一个 自由表,那么命令后面的NAME、CHECK、DEFAULT、FOREIGN KEY、 PRIMARY KEY和REFERENCE等选项均不能选用。该项缺省,说明 建立一个数据库表; (<字段名1> <类型>(<宽度>[,<小数位数>])[NULL|NOT NULL]: 定义表中的字段,选项NULL|NOT NULL用于声明是否允许该字段 值为空值。字段类型需要用一个特定的字母表示,如表5-1所示; 5.2.1 定义表结构 (续3) CHECK <约束条件1>[ERROR <出错提示信息1>][DEFAULT <默认 值1>]:定义字段有效性规则; PRIMARY KEY:将字段定义为主索引; UNIQUE:将字段定义为候选索引,注意这里UNIQUE不是唯一索 引; PRIMARY KEY <索引表达式2> TAG <索引标识2>|UNIQUE <索引 表达式3> TAG <索引标识3>:按指定的索引表达式建立主索引 或候选索引; FOREIGN KEY <索引表达式4> TAG <索引标识4>:按索引表达式 4建立普通索引; REFERENCES <表名3>[TAG <索引标识5>]:与表3建立永久关联。 5.2.1 定义表结构 (续4) 例. 利用SQL命令建立学生成绩管理数据库,该数据库包含学 生信息表、课程信息表和成绩信息表。 步骤1:建立学生成绩管理数据库。 CREATE DATABASE 学生成绩管理 步骤2:建立学生信息表。 CREATE TABLE 学生信息; (学号 C(8) PRIMARY KEY; ,姓名 C(8); ,性别 C(2) CHECK 性别=“男” OR 性别=“女” ; ERROR [只能输入“男”或“女”] DEFAULT



友情链接: year2525网 工作范文网 QS-ISP 138资料网 528200 工作范文网 baothai 表格模版