一.数据库的基础操作
数据库(Database)
是什么:存放数据的“仓库”,类似一个Excel文件,但功能更强大。
作用:集中管理大量数据(如用户信息、订单记录)
1)数据库的创建
create database /*可以添加if not exist*/ db_name /*指定字符集 charset */;
- if not exists 如果已经存在db_name同名的数据库则不会再创建,如果不存在则创建对应名字数据库
- db_name为创建的数据库名
- charset 是character set另外的写法,可以指定数据库使用的字符集如utf8,查看所有支持的字符集
可以用SHOW CHARACTER SET;
或查询系统表:SELECT * FROM information_schema.CHARACTER_SETS;
2)数据库的显示
show databases;
show databases like 'test%'; -- 列出以 "test" 开头的数据库
- 注意此处是databases加了s
除了exmple和test其余都为系统数据库,切勿随意删除或修改数据 - 可以用like筛选模糊匹配,列出以 “test” 开头的数据库
3)数据库的使用
use db_name;
//其他相关操作:select database();
// SHOW CREATE DATABASE your_database_name;
use为切换/选择数据库
select database()为查看当前所使用的是哪个数据库,如果未选择会返回null(用于在使用过程中忘记自己选择的是哪个数据库)
SHOW CREATE DATABASE your_database_name;可以查看创建数据库的语句
4)数据库的删除
drop database /*if exists*/ db_name;
- if exists如果存在对应名字的数据库则删除该数据库。如果不存在则无影响
可见刚刚存在的exmple已经被删除
二.表的基础操作
表(Table)
是什么:数据库中的“表格”,由行和列组成
示例:学生表 包含学号、姓名、年龄等列。
作用:按分类存储数据,如一个表存用户,另一个表存订单。
1)表的创建
create table tb_name (
Field1 datatype,
Field2 datatype
);
- tb_name为表名 Field为列 datatype为数据类型
- 列又可以称为字段
- 如图例,表明为student,存储的字段信息为姓名,id,年龄
- 特别注意,创建表前应先use指定数据库
2)表结构的查询
desc tb_name;
- Field
作用:字段的名称,即表的列名。 - Type
作用:字段的数据类型和长度。 - Null
作用:是否允许该字段为 NULL 值。
注意:若为 NO,插入数据时必须提供该字段的值(除非有默认值) - Key
作用:字段是否参与索引。 - Default
作用:字段的默认值,不指定会显示null。若未显式插入数据,自动填充此值。
例:如果age 字段默认值设为 0,则插入数据时未指定 age 时自动填 0。 - Extra
作用:字段的额外属性。
常见值:
auto_increment:自增字段(常用于主键)
VIRTUAL GENERATED:虚拟生成列(值由公式计算得出)
STORED GENERATED:存储生成列
3)表的删除
DROP TABLE IF EXISTS table1, table2, table3; -- 一次性删除多张表
- if exists同理数据库的删除
- 不同于数据库的删除一次可以删除多张表
4)列出已有表
show tables;
SHOW CREATE TABLE users; -- 相关操作:显示建表语句(含引擎、字符集等)