一、数据库的操作
1、显示当前数据库
show databases;
2、创建数据库
创建名为data-1的数据库
create database db_test1;
当我们创建数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,校验规则 是:utf8_ general_ ci
如果系统没有 db_test2 的数据库,则创建一个名叫 db_test2 的数据库,如果有则不创建
create database if not exists db_test2;
if not existsd的作用是避免 sql 报错
如果系统没有 db_test 的数据库,则创建一个使用 utf8mb4 字符集的 db_test 数据库,如果有则 不创建
create database if not exists db_test character set utf8mb4;
MySQL的utf8编码不是真正的utf8,没有包含某些复杂的中文字符。MySQL真正的utf8是 使用utf8mb4,建议大家都使用utf8mb4
3、使用数据库
use 数据库名;
4、删除数据库
drop database if exists 库名;
数据库删除以后,内部看不到对应的数据库,里边的表和数据全部被删除
二、数据类型
1、数值类型
分为整型和浮点型
(M,D)用来描述精度,M代表小数的长度,D代表小数点后的位数
数值类型可以指定为无符号(unsigned),表示不取负数
1字节(bytes)= 8 bit
对于整型类型的范围:
1. 有符号范围:-2^(类型字节数*8-1)到2^(类型字节数*8-1)-1,如int是4字节,就 是-2^31到2^31-1
2. 无符号范围:0到2^(类型字节数*8)-1,如int就是2^32-1
尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其 如此,还不如设计时,将int类型提升为bigint类型。
2、字符串类型
3、日期类型
常用数据类型:
INT:整型
DECIMAL(M, D):浮点数类型
VARCHAR(SIZE):字符串类型
TIMESTAMP:日期类型
三、表的操作
一个表,包含很多行, 每一行也称为 一条记录
一个行里可以有很多列,每一列也称为是一个字段
每个列都是有一个具体的类型的
1、查看表
desc 表名;
2、创建表
create table 表名(列名 类型,列名 类型.....);
可以使用comment增加字段说明
create table 表名 ( id int, name varchar(20) comment '姓名');
3、删除表
删除该表
drop table 表名;
若该表存在,删除该表
drop table if exists 表名;