第三节
SQL语言
学习任务:
1.初步认识
SQL语言
2.了解SQL常用命令
3.体验SQL语言在高级语言中的应用
教学过程
一、
什么是SQL语言
SQL(Structured
Query
Language,结构化查询语言)是关系数据库的标准语言。它不仅具有通用性,而且功能极强,当前几乎所有的关系数据库都支持它。更详细地了解SQL语言>>>
( .. / .. / .. / .. / Local
Settings / Temp / db / class15 / whatissql.htm"
\t
"_blank )
SQL按其功能可分为4大部分:
(1)数据定义语言(Data
Definition
Language,简称DDL),用于定义、撤销和修改数据模式。
(2)查询语言(Query
Language,简称QL),用于查询数据。
(3)数据操纵语言(Data
Manipulation
Language,简称DML),用于增、删、改数据。
(4)数据控制语言(Data
Control
Language,简称DCL),用于数据访问权限的控制。
二、了解SQL常用命令
SQL功能
动词
数据查询
SELECT
数据定义
CREATE、
DROP、ALTER
数据操纵
INSERT、UPDATE、DELETE
数据控制
GRANT、REVOKE
1、创建数据表
CREAT
TABLE
表名
(字段名
( http: / / www.21cnjy.com )1
数据类型
[列级完整性约束条件]
[,字段名2
数据类型
[列级完整性约束条件]]
[,字段名3
数据类型
[列级完整性约束条件]]……)
CREATE
TABLE
参赛选手表2
(
[选手编号]
TEXT
NOT
NULL
UNIQUE,
[姓名]
TEXT
NOT
NULL,
[性别]
TEXT,
[学校名称]
TEXT,
[电子邮件]
TEXT,
[备注]
TEXT,
CONSTRAINT
[INDEX1]
PRIMARY
KEY([选手编号])
)
;
2、SQL的数据更新
(1)插入数据
INSERT
INTO
〈表名〉[(〈列名1〉,〈列名2〉,……)]
VALUES(〈值1〉,〈值2〉,……);
INSERT
INTO
参赛选手表
VALUES
('2069','陈志远','男','布心中学','中学',NULL,NULL);
(2)删除数据
DELETE
FROM
( http: / / www.21cnjy.com )〈表名〉
[WHERE〈条件表达式〉];
DELETE
FROM
参赛选手表
WHERE
姓名='陈少华';
(3)修改数据
修改数据的一般形式为:
UPDATE
<表名>
SET
<列名1>=<表达式1>,<列名2>=<表达式2>,……
[WHERE<条件表达式>];
UPDATE
参赛选手表
SET
电子邮箱='chenzy@21cn.com'
WHERE
姓名='陈志远';
3、创建查询
SELECT[ALL|DIS
( http: / / www.21cnjy.com )TINCT]<目标列表达式>[,<目标列表达式>]…
FROM<表名或视图名>[,<表名或视图名>]…
[WHERE<条件表达式>]
[GROUP
BY<列名1>[
HAVING<条件表达式>]]
[ORDER
BY<列名2>[
ASC|DESC]]例3:
select
姓名,性别,学段
from
参赛选手表
例4:
select
姓名,性别
from
参赛选手表
where
学校名称='布心小学'
例5:
select
作品名称,作品类别,作品得分
from
参赛作品表
where
作品得分
between
80
and
89
例6:
select
作品
( http: / / www.21cnjy.com )名称,作品类别,获奖等级
from
参赛作品表
where
作品类别='网页设计'
and
获奖等级
is
not
null
例7:
SELECT
作品名称,作品类
( http: / / www.21cnjy.com )别,选手编号
FROM
参赛作品表
WHERE
作品类别='网页设计'
ORDER
BY
选手编号
DESC
DESC表示降序,ASC表示升序
例8:
SELECT
参赛作品表.
( http: / / www.21cnjy.com )作品名称,
参赛选手表.姓名,
参赛选手表.学校名称
FROM
参赛选手表,
参赛作品表
WHERE
参赛选手表.选手编号=参赛作品表.选手编号
例9:
SELECT
参赛选手表.
( http: / / www.21cnjy.com )学校名称,
COUNT(参赛作品表.作品名称)
AS
选送作品数量
FROM
参赛作品表,
参赛选手表
WHERE
参赛选手表.选手编号=参赛作品表.选手编号
GROUP
BY
参赛选手表.学校名称