文章目录
- Part 1. 数据库是什么
- 1. DBMS种类
- Part 2. 数据库的结构
- 1. RDBMS的常见系统结构
- 2. 表的结构
- Part 3. SQL概要
- 1. SQL语句及其种类
- 2. SQL的基本书写规则
- Part 4. 表的创建
- 1. 数据库的创建
- 2. 表的创建
- 3. 命名规则
- 4. 数据类型的指定
- 5. 约束的设置
- Part 5. 表的删除和更新
- 1. 表的删除
- 2. 表定义的更新
- 3. 向Product表中插入数据
- 4. 变更表名
Part 1. 数据库是什么
- 数据库(DB):将大量数据保存,通过计算机加工而成的可以进行高效访问的数据集合
- 数据库管理系统(DBMS):用来管理数据库的计算机系统
1. DBMS种类
-
层次数据库(HDB)
- 把数据通过层次结构(树形结构)的方式表现出来
- 目前很少使用
-
关系数据库(RDB)
- 由行和列组成的二维表来管理数据
- 使用专门的SQL(Structured Query Language)对数据进行操作
-
面向对象数据库(OODB)
- 把数据以及数据的操作集合以对象为单位进行管理
-
XML数据库(XMLDB)
- XML数据库可以对XML形式的大量数据进行高速处理
-
键值存储系统(KVS)
-
这是一种单纯用来保存查询所使用的主键(Key)和值(Value)的组
合的数据库
-
Part 2. 数据库的结构
1. RDBMS的常见系统结构
- 最常见的系统结构:客户端 / 服务器类型(C/S 类型)
2. 表的结构
- 用来管理数据的二维表在关系数据库中简称为表
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SCmgXe0g-1593876484634)(/Users/gray/Library/Application Support/typora-user-images/截屏2020-07-04 上午10.58.32.png)]
- 根据 SQL 语句的内容返回的数据同样必须是二维表的形式
- 关系数据库必须以行为单位进行数据读写
- 一个单元格中只能输入一个数据
Part 3. SQL概要
1. SQL语句及其种类
分类 | 指令 | 功能 |
---|---|---|
DDL数据定义语句 | CREATE | 创建数据可和表等对象 |
DROP | 删除数据库和表等对象 | |
ALTER | 修改数据库和表等对象的结构 | |
DML数据操纵语句 | SELECT | 查询表中的数据 |
INSERT | 向表中插入新数据 | |
UPDATE | 更新表中的数据 | |
DELETE | 删除表中的数据 | |
DCL数据控制语言 | COMMIT | 确认对数据库中的数据进行的变更 |
ROLLBACK | 取消对数据库中的数据进行的变更 | |
GRANT | 赋予用户操作权限 | |
REVOKE | 取消用户的操作权限 |
2. SQL的基本书写规则
SQL语句要以分号(;)结尾 | |
SQL语句不区分大小写;插入到表中的数据是区分大小写的 | 关键字大写 |
表名的首字母大写 | |
其余(列名等)小写 | |
常数的书写方式是固定的 | 字符串和日期常数需要使用单引号(‘)括起来 |
数字常数无需加注单引号(直接书写数字即可) | |
SQL 语句的单词之间需使用半角空格或换行符来进行分隔 |
Part 4. 表的创建
1. 数据库的创建
CREATE DATABASE <数据库名称>;
2. 表的创建
CREATE TABLE <表名>
( <列名1><数据类型><该列所需约束>,
<列名1><数据类型><该列所需约束>
<列名1><数据类型><该列所需约束>
<列名1><数据类型><该列所需约束>
...
<该表的约束1>,<该表的约束2>,...
);
# 示例
-> (product_id CHAR(4) NOT NULL,
-> product_name VARCHAR(100) NOT NULL,
-> product_type VARCHAR(32) NOT NULL,
-> sale_price INTEGER,
-> purchase_price INTEGER,
-> regist_data DATE,
-> PRIMARY KEY(product_id));
3. 命名规则
- 只能使用英文字母、数字、下划线(_)作为数据库、表和列的名称
- 名称必须以英文字母作为开头
- 同一个数据库中不能创建两个相同名称的表;同一个表中不能创建两个相同名称的表
4. 数据类型的指定
- 所有的类必须指定数据类型
- 数据类型表示数据的种类,包括数字型、字符型和日期型
- 每一列不能存储与该列数据类型不符的数据
INTEGER型 | 用来指定存储整数的列的数据类型,不能存储小数 |
CHAR型 | 用来指定存储字符串的列的数据类型,长度固定 |
VARCHAR型 | 用来指定存储字符串的列的数据类型,长度可变 |
DATE型 | 用来指定存储日期(年月日)的列的数据类型(日期型) |
5. 约束的设置
- NOT NULL :表示该列不能输入空白,也就是必须输入数据的约束
- PRIMARY KEY:设置主键约束,主键中元素是唯一的
Part 5. 表的删除和更新
1. 表的删除
DROP TABLE <表名>; # 删除的表,无法恢复;只能重新创建
2. 表定义的更新
- 添加列的ALTER TABLE语句
ALTER TABLE <表名> ADD COLUMN <列的定义>;
- 删除列的ALTER TABLE语句
ALTER TABLE <表名> DROP COLUMN <列名>; # mysql中不支持多行删除
- 【注意】表定义变更之后无法恢复
3. 向Product表中插入数据
BEGIN TRANSACTION;# mysql中修改为 START TRANSACTION;
INSERT INTO Product VALUES('0001', 'T恤衫','衣服', 1000, 500, '2009-09-20');
INSERT INTO Product VALUES('0002', 'T恤衫','衣服', 1000, 500, '2009-09-20');
COMMIT;# 确定插入行的指令;
4. 变更表名
RENAME TABLE Poduct to Product; # 重命名
本文地址:https://blog.csdn.net/GrayD1419/article/details/107132392