数据库学习笔记
2025-08-25
最近在学习数据库,把 SQL 的基础知识整理了一遍。虽然都是些基础内容,但系统地过一遍还是很有必要的。记在这里,方便以后查阅。
SQL 分类
SQL 语句按功能可以分为四类:
- DDL(数据定义语言):定义数据库对象,包括数据库、表、字段
- DML(数据操作语言):对表中的数据进行修改
- DQL(数据查询语言):对数据库中的表进行查询
- DCL(数据控制语言):创建用户,进行用户访问权限设置
DDL —— 数据库操作
创建数据库:
CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];
删除数据库:
DROP DATABASE 数据库名;
DDL —— 表操作
创建表:
CREATE TABLE 表名 ( ... );
查询表结构:
DESC 表名;
查询建表信息:
SHOW CREATE TABLE 表名;
数据类型
数值类型: TINYINT, SMALLINT, MEDIUMINT, INT, FLOAT, DOUBLE, DECIMAL
字符串类型: CHAR(定长),VARCHAR(变长),TINYBLOB, TINYTEXT, MEDIUMBLOB, MEDIUMTEXT 等
CHAR(10) 即使输入一个字符也会占用十个字符的空间;VARCHAR(10) 会根据实际内容占据空间,但性能不如 CHAR。
日期类型: DATE(日期),TIME(时分秒),DATETIME(混合日期),YEAR(年份)
案例
CREATE TABLE stafftb (
id INT,
workernum VARCHAR(10),
name VARCHAR(10) COMMENT '姓名',
gender CHAR(1) COMMENT '性别',
age TINYINT UNSIGNED COMMENT '年龄',
idcard CHAR(18) COMMENT '身份证',
entrydate DATE COMMENT '入职时间'
) COMMENT '员工表';
修改表
- 添加字段:
ALTER TABLE 表名 ADD 字段名 数据类型 [COMMENT][约束]; - 修改字段数据类型:
ALTER TABLE 表名 MODIFY 字段名 新数据类型; - 修改字段名和数据类型:
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 新数据类型; - 删除字段:
ALTER TABLE 表名 DROP 字段名; - 修改表名:
ALTER TABLE 表名 RENAME TO 新表名; - 删除表:
DROP TABLE 表名;