MySQL数据库基础
1.数据库操作
1.1显示当前数据库
SHOW DATABASES;
1.2创建数据库
CREATE DATABASE [IF NOT EXISTS] DB_mane [create_specification [,create_specification[……]
create_specification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collaction_name
- 大写的表示关键字
- []是可选项
- CHARACTER SET:指定数据库采用的字符集
- COLLATE:指定数据库字符集的校验规则(当没有指定字符集和校验规则的时候,系统使用默认的字符集:utf8,校验规则:utf_general_ci)
1.3示例
- 创建test1数据库:
CREATE DATABASE test1;
- 如果系统没有test2的数据库则创建一个名叫test2的数据库,如果有则不创建
CREATE DATABASE IF NOT EXISTS test2;
- 如果系统没有test3数据库,则创建一个使用utf8mb4字符集的test3数据库,如果有则不创建
CREATE DATABASE IF NOT EXISTS test3 CHARACER SET utf8mb4;
1.4 使用数据库
use 数据库名;
1.5删除数据库
- 删除数据库后,内部看不到对应的数据库,里边的表和数据全部被删除
语法:DROP DATABASE [IF EXISTS] name;
2.常用数据类型
2.1数值类型:
分为整形和浮点型
数据类型 | 大小 |
---|---|
BIT[(M)] | M指定位数,默认为1 |
TINYINT | 1字节 |
SMALLINT | 2字节 |
INT | 4字节 |
BIGINT | 8字节 |
FLOAT(M,D) | 4字节(单精度M指长度,D指定小数位数。会发生精度丢失) |
DOUBLE(M,D) | 8字节 |
DECIMAL(M,D) | M/D最大值+2(双精度,M指定长度,D指定小数位数。会发生精度丢失) |
NUMERIC(M,D) | M/D最大值+2(双精度,M指定长度,D指定小数位数。会发生精度丢失) |
2.2字符串类型
数据类型 | 大小 |
---|---|
VARCHAR(SIZE) | 0-65535字节(可变长度字符串) |
TEXT | 0-65535字节(长文本数据) |
MEDIUMTEXT | 0-16777215字节(中等长度文本数据) |
BLOB | 0-65535字节(二进制文本长度) |
2.3日期类型
数据类型 | 大小 |
---|---|
DATETIME | 8字节(范围从1000到9999年,不会进行时区的检索和转换) |
TIMESTAMP | 4字节(范围从1970到2038年,自动检索当前时区并进行转换) |
3.表的操作
需要操作数据库的表时,先要使用该数据库:
3.1查看表结构
desc 表名;
3.2创建表
语法:
create table table_name(
field1 datatype,
field2 datatype,
field3 datatyte
);
//可以使用comment增加字段说明
//示例
create table student(
id int,
name varchar(20) comment '姓名',
password varchar(50) comment '密码'
age int,
sex varchar(1),
birthday timestamp,
amout decimal(13,2),
resume text
);
3.3删除表
语法格式:
drop [temporary] table [if exists] table_name1 [,table_name2]...
//示例:
//删除stu_test表
drop table stu_test;
//如果存在stu_test表,则删除stu_test表
drop table if exists stu_test;