1、创建数据表
create table 表名(
字段名1 字段数据类型1 comment "备注信息1",
字段名2 字段数据类型2 comment "备注信息2",
.....................................
字段名n 字段数据类型n comment "备注信息n"
);
2、查看数据库中所有数据表
show tables;
3、查看数据表字段信息
describe 表名;或者 desc 表名;
4、查看数据表创建信息
show create table 表名\G;
5、修改数据表中表名(to可省略)
alter table 表名 rename 新表名;
6、修改数据表的字段名和数据类型
alter table 表名 change 原字段名 新字段名 新数据类型;
7、数据表添加字段
alter table 表名 add 新字段 新数据类型;
8、在数据表中的第一个位置添加字段
alter table 表名 add 字段名 数据类型 first;
9、在指定数据表字段之后添加字段
alter table 表名 add 字段名 数据类型 after 已存在字段名;
10、删除数据表中的字段
alter table 表名 drop 字段名;
11、修改数据表字段排列位置
alter table 表名 modify 待修改字段名 数据类型 after 字段名;
已经修改数据表字段排列位置了,如图:
12、删除数据表
drop table 表名;
13、为什么需要不同的数据类型?
不同的数据类型决定了MySQL储存数据方式的不同
14、有哪几种MySQL数据类型?
①整数类型
TINYINT 1
INT 4
BIGINT 8
②浮点数和定点数类型
FLOAT 4
DOUBLE 8
③日期和时间类型
DATE 4 2022-03-12
DATETIME 8 2022-05-21 13:14:00
④字符串和二进制类型
char和varchar
char(4) 'a' 4 长度固定
varchar(4) 'a' 1 长度固定
TEXT 16的倍数 0-65535
ENUM("值1","值2",...,"值n") 单选
SET("值1","值2",...,"值n") 多选
BIT 字节文件 音乐、电影、文件
15、单字段主键
create table 表名(
字段名1 数据类型1 comment "备注信息1" primary key,
字段名2 数据类型2 comment "备注信息2"
);
查看一下:desc li;
16、多字段主键
字段名1 数据类型1 comment "备注信息1" ,
字段名2 数据类型2 comment "备注信息2",
字段名3 数据类型3 comment "备注信息3" ,
primary key(字段名1,字段名2)
);
查看一下:desc classroom;
17、外键
constraint 字段别名一般为fk_本表字段名 foreign key (本表字段名) references 来源表名(来源表中字段名)
班级表中 主键:班级名 其他字段:人数、班长、联系方式
教师表 主键:教师号 其他字段:教师名
课表 外键:班级名、教师号、其他字段:课程名、.....
查看:desc timetable;
18、
非空 | not null |
唯一 | unique |
默认 | default “默认值” |
自增 | auto increment |
查看一下:desc book;
19、指定字段插入数据
insert into 表名 (字段名1,字段名2,.........)
values (值1,值2,..........);
查看一下:select * from temp2;
20、所有字段插入数据
insert into 表名 values (值1,值2,.........);
查看一下:select * from temp2;
21、指定字段批量插入数据
insert into 表名 (字段名1,字段名2,.........)values
(值1,值2,............),
(值1,值2,............),
.............;
查看一下:select * from temp2;
22、所有字段批量插入数据
insert into 表名 values
(值1,值2,..........),
(值1,值2,..........),
.............;
查看一下:select * from temp2;
23、更新数据
update 表名 set
字段名1 =值1,
字段名2 =值2,
字段名3 =值3
where 条件;
查看一下:select * from temp2;
24、删除数据
delete from 表名 where 条件;
查看一下:select * from temp2;
25、备份单个数据库
mysqldump -u用户名 -p密码 数据库名>文件名.sql
mysqldump -u用户名 -p密码 数据库名>文件路径\文件名.sql
这个是我指定了路径在D盘
26、备份多个数据库
mysqldump -u用户名 -p密码 --databases 数据库名1 数据库名2....>文件名.sql
27、备份所有数据库
mysqldump -u用户名 -p密码 --all -databases>文件名.sql
28、 不登录执行SQL文件
mysql -u用户名 -p密码 数据库名<文件名.sql
29、登录后执行SQL文件
source 文件名.sql