数据库的概念:
数据库是将大量数据保存起来,通过计算机加工而成的可以 进行高效访问的数据集合。该数据集合称为数据库(Database,DB)。用来管理数据库的计算机系统称为数据库管理系统(Database Management System,DBMS)。数据库管理系统的主要功能有:1、数据库建立和维护功能。2、数据定义功能。3、数据组织、储存和管理功能。4、数据操作功能。5、事务的管理和运行功能。6、其他功能。
数据库系统:(DataBase System,DBS)是指在计算机中引入数据库后的系统,一般由数据库、数据库管理系统、应用程序、数据管理员组成。数据管理员(DataBase Administrator,DBA)主要负责对数据库进行维护。
DBMS的种类
DBMS 主要通过数据的保存格式(数据库的种类)来进行分类,现阶段主要有以下 5 种类型.
1.2 RDBMS的常见系统结构
使用 RDBMS 时,最常见的系统结构就是客户端 / 服务器类型(C/S类型)这种结构(图 1-3)
SQL语言
SQL (Structured Query Language)是结构性查询语言,是用户操作关系数据库的通用语言。
SQL按其功能主要分为可分为四大功能:数据定义、数据查询、数据操纵、数据控制。以下表列出了SQL的功能以及实现四大功能的动词。
SQL功能 | 动词 |
数据定义 | CREATE,DROP,ALTER |
数据查询 | SELECT |
数据操纵 | INSERT,UPDATE,DELETE |
数据控制 | GRANT,REVOKE,DENY |
四种最基本的数据类型
用来指定存储整数的列的数据类型(数字型),不能存储小数。
用来存储定长字符串,当列中存储的字符串长度达不到最大长度的时候,使用半角空格进行补足,由于会浪费存储空间,所以一般不使用。
用来存储可变长度字符串,定长字符串在字符数未达到最大长度时会用半角空格补足,但可变长字符串不同,即使字符数未达到最大长度,也不会用半角空格补足。
用来指定存储日期(年月日)的列的数据类型(日期型)。
2.7 约束的设置
约束是除了数据类型之外,对列中存储的数据进行限制或者追加条件的功能。
NOT NULL
是非空约束,即该列必须输入数据。
PRIMARY KEY
是主键约束,代表该列是唯一值,可以通过该列取出特定的行的数据。
SQL语法:
1、定义表:
CREATE TABLE <表名> (
<列名> <数据类型> [列级完整性约束定义],
<列名> <数据类型> [列级完整性约束定义],
....
);
完整性约束定义:
定义主码约束:
如果在列级完整性定义主码
<列名> <数据类型> PRIMARY KEY,
如果在表级完整性定义主码
PRIMARY KEY(<列名> )
定义外码约束:
FOREIGN KEY(<列名>) REFERENCES <外表名> <外表列名>
2、删除表
DROP TABLE <表名>
3、修改表结构
ALTER TABLE <表名>
ALTER COLUMN <列明> <数据类型> --修改列定义
ALTER TABLE <表名>
ADD <列名> <数据类型> <约束> --添加一个新列
ALTER TABLE <表名>
DROP COLUMN <列名> --删除列
ALTER TABLE <表名>
ADD <约束名> --添加约束定义
ALTER TABLE <表名>
DROP <约束名> --删除约束定义
4、数据更新
UPDATE <表名>
SET <列名> = <表达式> [, <列名2>=<表达式2>...];
WHERE <条件>; -- 可选,非常重要。
ORDER BY 子句; --可选
LIMIT 子句; --可选
5、数据插入
INSERT INTO <表名> (列1, 列2, 列3, ……) VALUES (值1, 值2, 值3, ……);
练习题3.1
编写一条 CREATE TABLE 语句,用来创建一个包含表 1-A 中所列各项的表 Addressbook (地址簿),并为 regist_no (注册编号)列设置主键约束
表1-A 表 Addressbook (地址簿)中的列
3.2
假设在创建练习1.1中的 Addressbook 表时忘记添加如下一列 postal_code (邮政编码)了,请把此列添加到 Addressbook 表中。
列名 : postal_code
数据类型 :定长字符串类型(长度为 8)
约束 :不能为 NULL
3.3
编写 SQL 语句来删除 Addressbook 表。
3.4
编写 SQL 语句来恢复删除掉的 Addressbook 表。
答案:
3.1
3.2
3.3
3.4