数据库操作
1. 显示数据库
显示当前所有数据库
show databases;
2. 创建数据库
create database db_name;
character set
:指定数据库采用的字符集
CREATE DATABASE db_test character set utf8mb4;
MySQL的utf8编码不是真正的utf8,没有包含某些复杂的中文字符。MySQL真正的utf8是使用utf8mb4,建议大家都使用utf8mb4
collate
: 指定数据库字符集的校验规则if not exists
:如果系统没有 db_test2 的数据库,则创建一个名叫 db_name的数据库,如果有则不创建
create database [if not exists] db_name;
3. 使用数据库
use 数据库名;
4. 删除数据库
drop database [if exists] db_name;
数据类型
常用数据类型
- int:整形
- decimal(M,D):浮点数类型
- varchar(size):字符串类型
- timestamp:日期类型
数值类型
分为整形和浮点型
常见的浮点型float和double会发生精度丢失
在SQL中常用decimal(M,D) 表示浮点数类型,M指定长度,D指定小数位数,是精确数值 ,但他牺牲了存储空间和运算速度才换得了精确的表示方法。
字符串类型
varchar(size):是最常用的字符串类型,带一个参数用来约定存储的最大空间。
varchar(32)表示最多存储32个字符,并不代表一定会分配32个,但是最终的存储位置一定不会超过32。
日期类型
- datetime
- timestamp
表的操作
注:再操作数据库的表之前,一定要先使用该数据库
use 数据库名;
查看数据库中的所有表
show tables;
查看表结构
desc 表名;
创建表
create table table_name (
field1 datatype,
field2 datatype,
field3 datatype
);
使用comment增加字段说明
create table student (
id int,
name varchar(20) comment '姓名',
password varchar(20) comment '密码',
age int,
sec varchar(1),
birthday timestamp,
amout decimal(13,2),
resume text
);
删除表
drop table [if exists] table_name;
表的增删改查
1.新增(create)
insert into table_name [column,column,column...] values (value_list),(value_list)...;
value_list:value,value....
单行数据全列插入
insert into student values(1, 18001, "张张", NULL);
多行数据全列插入
insert into student values(2, 18002, "张三", "111"),(3, 18003, "李四","test");
指定列插入
insert into student (id,stu_id,name) values(4,18007,"六六");
多行数据、指定列插入
insert into student(id,name) values(5,"wuwu"),(6,"xixi"),(7,"qiqi");