第四章总结
●SQL(structured query language)语言全称是结构化查询语言
它是一种在关系型数据库中定义和操纵数据的标准语言
●SQL包含的功能
-数据定义
一数据查询
-数据操作
-数据控制
4.1.2 SQL语言的特点
●一体化
●高度非过程化
●面向集合的操作方式●提供多种方式使用●语言简洁
4.1.3 SQL语言的功能
四部分:数据定义功能、数据控制功能、数据查询功能和数据操纵功能。
SQL功能数据查询
命令动词
SELECT
数据定义
CREATE、DROP、ALTER
数据操纵数据控制
INSERT、UPDATE、DEI ETEGRANT、REVOKE、DENY
DDL语句引导词: Create(建立),Alter(修改),Drop(撤消) V模式的定义和删除,包括定义Database,Table, View,Index,完整性约束条件等,也包括定义对象(RowType行对象,Type列对象)
DML语句引导词:Insert,Delete, Update, Select
各种方式的更新与检索操作,如直接输入记录,从其他Table输入
各种复杂条件的检索,如连接查找,模糊查找,分组查找,嵌套查找等
各种聚集操作,求平均、求和、..等,
分组聚集,分
组过滤等
DCL语句引导词: Grant, Revoke
V安全性控制:授权和撤消授权
char (n):固定长度的字符串
varchar (n):可变长字符串
int:整数I有时不同系统也写作integer
real:浮点精度数字I有时不同系统也写作float(n),小数点后保留n位
date :日期(如2003-09-12)
time :时间(如23:15:003)
■■
现行商用DBMS的数据类型有时和_上面有些差异,请注意;
和高级语言的数据类型,总体上是一致的,但也有些差异。
创建数据库
如:学生选课数据库SCT
学生表、院系表、课程表、教师表、选课表
学生:学号S#,姓名Sname,性别Ssex,年龄Sage,所属系别D#,班级Sclass
Student ( S# char(8), Sname char(10),Ssex
char(2),Sage integer,D# char(2), Sclass char(6) )
院系:系别D#,系名Dname,系主任Dean
Dept ( D# char(2), Dname char(10),Dean char(10))
建立数据库
包括两件事:定义数据库和表(使用DDL)
DDL :
创建数据库(DB)-Create Database
创建DB中的Table(定义关系模式---CreateTable
创建Database
数据库(Database)是若干具有相互关联关系的Table/Relation的集合
(,
数据库可以看作是一个集中存放若干Table的大型文件
create database的简单语法形式:
create database数据库名;
示例:创建课程学习数据库SCT create database SCT;
创建Table
create table简单语法形式:
Create table表名(列名数据类型[Primary key|Unique]
[Not nul][,列名数据类型[Not null] ,.]);
“[]” 表示其括起的内容可以省略,“|” 表示其隔开的两项可取其一
Primarykey:主键约束。每个表只能创建一个主键约束。
Unique:唯一性约束(即候选键)。 可以有多个唯一性约束。
Notnull:非空约束。是指该列允许不允许有空值出现,如选择了Notnull表明该列不允许有空值出现。