说明:
- 大写的表示关键字
- [] 是可选项
- CHARACTER SET: 指定数据库采用的字符集
- COLLATE: 指定数据库字符集的校验规则
一、数据库操作
1、显示当前数据库
sql
SHOW DATABASES;
2、创建数据库
sql
CREATE DATABASE IF NOT EXISTS db_test CHARACTER SET utf8mb4;
//如果系统没有 db_test 的数据库,则创建一个使用 utf8mb4 字符集的 db_test 数据库,如果有则
不创建
3、使用数据库
sql
use 数据库名;
4、删除数据库
sql
DROP DATABASE [IF EXISTS] db_name;
二、常用数据类型
|---------------|------------|-------------------------------------|
| 数据类型 | 大小 | 说明 |
| INT | 4字节 | 对应Java中Integer |
| BIGINT | 8字节 | 对应Java中Long |
| DOUBLE(M,D) | 8字节 | 对应Java中Double,M指定长度,D指定小数位数,会发生精度丢失 |
| DECIMAL(M,D) | M/D最大值+2 | 精确数值 |
| VARCHAR(SIZE) | 0-65,535字节 | 可变长度字符串,对应Java中String |
| DATETIME | 8字节 | 范围从 1000 到 9999 年,不会进行时区的 检索及转换。 |
三、表操作
需要操作数据库中的某个表时,需要先使用该数据库。
1、查看数据库中的表
sql
show tables;
2、查看表结构
sql
desc 表名;
|-------|------|--------|------|---------|-------|
| Field | Type | Null | Key | Default | Extra |
| 字段名字 | 字段类型 | 是否允许为空 | 索引类型 | 默认值 | 扩充 |
3、创建表
sql
CREATE TABLE table_name (
field1 datatype,
field2 datatype,
field3 datatype
);
可以使用comment增加字段说明。
示例:
sql
create table stu_test (
id int,
name varchar(20) comment '姓名',
password varchar(50) comment '密码',
age int,
sex varchar(1),
birthday timestamp,
amout decimal(13,2),
resume text
);
4、删除表
sql
DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...
示例:
sql
-- 删除 stu_test 表
drop table stu_test;
-- 如果存在 stu_test 表,则删除 stu_test 表
drop table if exists stu_test;