完整约束查询
SELECT id,name,phone,zip
From authors
WHERE zip <> ‘350002’AND phone = ‘1234567’
这个例子查询结果返回的是住在福州鼓楼地区以外(邮编号不为350002)的且电话号码为1234567的作者的资料。
表1.3 SELECT语句中支持的比较操作符
操作符 |
说明 |
= |
等于 |
> |
大于 |
< |
小于 |
>= |
大于等于 |
<= |
小于等于 |
<> |
不等于 |
IN |
位于指定列表值中,或者指定的子查询的结果中 |
BETWWEEN..AND |
位于两个值之间 |
LIKE |
包含与指定串相同的模式。此模式将与一个或多个通配符的串相比较 |
● 添加ORDER BY子句
SELECT id,name,phone,zip
From authors
WHERE zip = ‘350002 ‘
ORDER BY id
这样,这条SQL语句返回的结果将id列的升序排序。
1.1.2 SQL语言的分类及语法
2.INSERT语句语法
表1.4 INSERT语句的组件
组件 |
说明 |
INSERT INTO |
指明要向哪个表中加入行 同时列出指定加入的列,如未指定的对象为表中的每一列 |
VALUES |
指明在列表中各列的填充值 |
SELECT |
SELECT语句返回被加到表中的各行 |
● 一个简单的INSERT语句:
INSERT INTO authors
VALUES
(‘FZ1234’,’张三’,’1234567’,’深圳幸运计算机公司’,’350002’,’本文作者’)
这样,便向表中加入了一条记录。
我们也可以指明用哪几列来填充,看下面的例子;
● 一个简单的INSERT语句:
INSERT INTO authors(id,name,phone)
VALUES (‘FZ3456’,’李四’,’7654321’)
通过上面两个例子的方法,我们就可以往数据库中添加内容了,需要注意的是,我们插入值(包含在VALUES部分中的)要按照INSERT INTO 部分中指明的列的顺序,或是在未指明的条件下按照数据库原始各列的顺序。
3.UPDATE语句语法
表1.3 UPDATE语句的组件
组件 |
说明 |
UPDATE |
指明要更新的表 |
SET |
指明用来更新的列和分配给那些列的新值 |
FROM |
指明UPDATE语句所以处理的对象表 |
WHERE |
指明要更新的数据所满足的标准 |
● 将列设定为确定值:
UPDATE authors
SET zip = ‘350003’
WHERE id = ‘FZ4567’
通过这个语句我们可以把数据库中id为 FZ4567 的条记录的zip列的值改为 350003。这时如果我们无法给出确定的值,比如我们要给 id 为 FZ1234 的那位作者加薪 100 元,则可以这样改写SQL语句语句;
● 基于已有的值来设置新的列值
UPDATE authors
SET salary = salary 100
WHERE id = ‘FZ1234’
这样,即使不知道authors表中的salary列值,也可以用一条简单的UPDATE语句成功地把薪水增加 100。
1.DELETE语句语法
表1.4 DELETE语句的组件
组件 |
说明 |
DELETE FROM |
指明要执行删除操作的表 |
WHERE |
指明要删除行所满足的标准 |
● 删除一个表中的所有值:
DELETE FROM authors
这条语句的执行结果是删除authors表中的所有行。
● 删除一个表中的指定的行
DELETE FROM authors
WHERE id = ‘FZ1234’
这条语句的执行结果是删表authors中id为 FZ1234 的行。
在前面的一部分内容中我们讲述了最常用的SQL语句的基本方法,但这只是SQL语句的一部分,其它的SQL语句由于不常用就不一一讲述了。各位读者如果有兴趣可以参考一些专门的SQL语法资料,这将能使你更好地操纵数据库,更好地通过数据库来帮助你完成你的工作。
(四)中小型关系型数据库简介
1.2 中小型关系型数据库简介
1.2.1 关系型数据库简介
在我们对数据库操作进行讲解前,我们觉得有必要向大家介绍一下关系型数据库这个概念,因为我们觉得无论是你做什么样的系统,都或多或少要接触到数据库,而现在提到数据库,当然就是关系型数据库了。那么,什么是关系型数据库(RDB)呢?
在关系型数据库中数据以行和列的形式存储,以便于用户理解,这一系列的行和列被称为表,一组表便组成了数据库。在关系数据库中:各数据项之间用关系来组织,关系(relationship)是表之间的一种连接,通过关系,我们可以更灵活地表示和操纵数据;另外,用户可以非常方便的用查询(Query)来检索数据库中的数据,一个Query是一个用于指定数据库中行和列的SELECT语句。
关系型数据库通常包含下列组件:
● 客户端应用程序(Client)
● 数据库服务器(Server)
● 数据库(Database)
SQL是Client端通往Server端的桥梁,Client用SQL来象Server端发送请求,Server返回Client端要求的结果。
现在比较流行的大中型关系型数据库有IBM DB2、Oracle、SQL Server、SyBase、Informix等,常用的小型数据库有Access、Pradox、Foxpro等,现在个人用户比较常用的主要是基于中小型数据库MS SQL Server和Access的,所以在以下的篇幅中我们介绍这两种数据库系统的简单操作。