MySQL数据库操作
数据库操作
- 创建数据库:
1 | create database [if not exists] 数据库名; |
-
使用数据库:
1 | use 数据库名; |
-
查询所有数据库:
1 | show databases; |
-
查询当前数据库:
1 | select database(); |
-
删除数据库:
1 | drop database [if not exists] 数据库名 |
上面的创建和删除中的if not exists是可选参数,当需要创建或者删除的数据库不存在的时候用这个可以不出现报错
数据表操作
-
约束:
- 概念:
作用于表中字段上的规则,用于限制存储在表中的数据
-
目的:
保证数据库中数据的正确性,有效性和完整性
常用约束:
约束 | 描述 | |
---|---|---|
非空约束 | 限制该字段值不能为null | not null |
唯一约束 | 保证字段的所有数据都是唯一的不重复的 | unique |
主键约束 | 主键是一行数据的唯一标识,要求非空且唯一 | primary key |
默认约束 | 保存数据时,如果未指定该字段值,则采用默认值 | default |
外键约束 | 让两张表的数据建立连接,保证数据的一致性和完整性 | foreign key |
创建主键的时候可以在后面添加auto_increment关键字进行自增;
-
创建数据表:
1
2
3
4
5
6
7
8create table if not exists tab_student
(
id int primary key auto_increment comment "学号",
name varchar(20) not null comment "姓名",
gender varchar(10) comment "性别",
age int not null comment "年龄",
province varchar(30) not null comment "省份"
) comment "学生表"comment为一个标识;
注:创建数据表之前使用use命令来选择数据库
-
查询当前数据库的所有表:
1
show tables;
-
查询表结构:
1
desc 表名
-
查询建表语句:
1
show create table 表名
表结构的修改:
-
添加字段:
alter table 表名 add 字段名 类型(长度) [comment 注释] [约束];
-
修改字段类型:
alter table 表名 modify 字段名 新数据类型(长度);
-
修改字段名和字段类型:
alter table 表名 change 旧字段名 新字段名 类型(长度) [comment 注释] [约束];
-
删除字段:
alter table 表名 drop column 字段名;
-
修改表名:
rename table 表名 to 新表名;
删除表操作:
1 | drop table if exists 表名 |
表中插入数据
insert语法
-
指定字段添加数据:
1
insert into 表名(字段1,字段2) value(值1,值2);
示例:
1
insert into tab_emp(username, name, gender, create_time, update_time) values ('xxxxx', 'zhangsan', '1', now(), now());
-
全部字段添加数据:
1
insert into 表名 values(值1,值2);
-
批量添加数据(指定字段):
1
insert into 表名(字段名,字段名2) values(值1,值2),(值1,值2);
示例:
1
insert into tab_emp(username, name, gender, create_time, update_time)values ('sssss', 'lisi', '1', now(), now()),('ddddd', 'wangwu', '2', now(), now());
-
批量添加数据(全部字段):
1
insert into 表名 values(值1,值2,...),(值1,值2,.....);
表中修改数据
update语法
-
修改数据:
1
update 表名 set 字段名1=值1,字段名2=值2,...[where 条件]
示例:
1
2
3
4update tab_emp
set name = '张三',
update_time=now()
where id = 1;
表中删除数据
delete语法
-
删除数据:
1
delete from 表名 [where 条件]
示例:
1
delete from tab_emp where id=1;
注意:上面的update和delete后面没有添加where子句是对整张表进行操作;
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 NING / MiRACLE!