1.表的查询
在对数据库的表进行操作的时候(增删改查), 都必须先告诉MySQL我们要操作的是哪一个数据库
use 数据库名称;
1.如何查看数据库中有哪些表?
show tables;
2.如何查看指定表的结构
desc 表名;
2.表的创建
reate table 表名(
字段名称 数据类型,
字段名称 数据类型,
字段名称 数据类型,
字段名称 数据类型,
);
示例:
create table if not exists person(
id int,
name text
);
3.表的删除与修改
drop table if exists person;
注意点: 以上语句, 如果需要删除的表存在, 那么就直接删除, 如果不存在就跳过
rename table 原始名称 to 新的名称;
rename table stu to person;
1添加字段
alter table 表名 add 新增字段名称 新增字段数据类型 [位置];
alter table person add age int;
注意点: 默认情况下会将新增的字段放到原有字段的后面
alter table person add score float first;
注意点: 我们可以通过指定first将新增的字段放到原有字段的前面
alter table person add phone int after name;
注意点: 我们可以通过after指定将新增的字段放到哪个字段的后面
2删除字段
alter table 表名 drop 字段名称;
alter table person drop phone;
3修改字段
修改字段的数据类型
alter table 表名 modify 需要修改的字段名称 新的数据类型
alter table person modify score double;
修改字段的名称和数据类型
alter table 表名 change 原始字段名称 新的字段名称 新的数据类型;
alter table person change age addr text;
4.存储引擎
InnoDB:
- 如果表的存储引擎是InnoDB, 那么只要创建表就会自动创建一个文件, 这个文件就保存了这张表的结构
- 如果往InnoDB的表中存储数据, 那么数据会被存储到ibdata1的文件中,
如果存储的数据比较多, 那么系统会自动再创建ibdata2, ibdata3, ...文件
MyISAM:
- 如果表的存储引擎是MyISAM, 那么只要创建表就会自动创建三个文件
+ .sdi这个文件就保存了这张表的结构
+ .MYD这个文件就保存了这张表中存储的数据
+ .MYI这个文件就保存了这张表中的索引
Memory:
- 如果表的存储引擎是Memory, 那么只要创建表就会自动创建一个文件, 这个文件就保存了这张表的结构
- 注意点: 如果表的存储引擎是Memory, 那么就不会像InnoDB/MyISAM将数据保存到文件中了, 而是直接保存到内存中
4.数据增删改查
- 插入数据
1.插入数据
insert into 表名 (字段名称1, 字段名称2) values (值1, 值2);
示例:
create table if not exists stu(
id int,
name varchar(20)
);
insert into stu (id, name) values (1, 'll');
# 注意点: 在插入数据的时候指定的字段名称的顺序不用和表中的字段名称的顺序一致
insert into stu (name, id) values ('zs', 2);
# 注意点: 在插入数据的时候指定的取值顺序必须和指定的字段名称顺序一致
insert into stu (name, id) values (3, 'ls');
# 注意点: 如果插入数据时指定的取值顺序和表中的字段顺序是一致的, 那么可以不指定字段名称
insert into stu values (3, 'ls');
# 注意点: 我们可以通过values同时插入多条数据
insert into stu values (4, 'ww'), (5, 'zl');
- 删除数据
1.删除数据
delete from 表名 [where 条件];
# 删除满足条件的数据
delete from stu where score > 60;
$ 删除所有的数据
delete from stu;
- 更新数据
更新数据
update 表名 set 字段名称=值 [where 条件];
# 注意点: 在指定条件的时候, 我们可以通过AND来指定多个条件, AND===&&
update stu set score=100 where name='lnj' AND id=5;
# 注意点: 在指定条件的时候, 我们可以通过OR来指定多个条件, OR===||
update stu set score=66 where name='zs' OR name='ww';
# 注意点: 在更新数据的时候是可以同时更新多个字段的
update stu set name='it666', score=33 where id=5;