一、Mysql使用方法:
1、Mysql完全可以使用Navicat、workbench等图形化界面工具对数据进行增删改查
2、sql语句的作用:
(1)在程序执行过程中需要用到sql语句进行增删改查
(2)能够快速进行增删改查操作
(3)能够实现多表联查、嵌套查询等操作
二、库的操作
1、库的作用
Mysql中库的作用是管理库中的业务表,库相当于一个文件夹,在这个文件夹中可以存放多个数据表格,如下图显示的xxx学校的Mysql数据库,其中包含人员数据库、招商数据库、物资数据库以及财务数据库。每一个库中都有相应的数据表,如人员库中包括:学生表、教师表、班级表、科目表等等。
2、创建库:
create database 库名
ex:create database student
3、创建库时指定字符编码:
create database 库名 charset 字符集
ex:create database student charset utf8
4、删除库
drop database 库名
drop database first
5、修改库:数据库一旦创建则不可修改数据库名称,但可修改数据库的编码格式,修改字符编码只需要重写改语句,并将编码格式改成指定编码格式
create database 库名 charset 编码格式
create database first charset gbk
6、查看库
(1)查看所有数据库
show databases
(2)查看当前数据库
select database()
7、使用数据库
use 表名
use first
三、表的操作
Mysql当中表的作用是存放数据,并对表中的数据进行数据约束和条件约束的,如下图学生表中的sname字段,需要设置字段的类型以及长度限制。
因为是关系型数据库,所以库中的每一个表中的数据可以进行数据关联,如下图xxx学校人员管理系统数据库中,学生表就可以用class字段和班级表中的sname字段进行关联。所以,只要两个表中有一个字段中的数据是一致的,就可以进行数据表关联查询
1、创建表:
**创建表示需要在每一行的结束位置用“,”分割**
create table 表名(
字段名1 字符类型(字符长度) 约束条件,
字段名2 字符类型(字符长度) 约束条件,
…… ,
字段名N 字符类型(字符长度) 约束条件
)
ex:
create table first(
id INT(20) not null primary key auto_crement
sname VARCHAR(40),
gender enum('m','w'),
hobbie SET('study','play','sleep','swiming'))
2、常见的数据类型表:
1 int
2 varchar
3 char
4 float
5 ……
3、常见的约束条件表:
1 not null 非空约束
2 defult 默认值
3 unique 唯一约束
4 primary key 主键约束,主键自增属性:auto_crement
5 foreign key 外键约束
6 ……
2、删除表:
drop table 表名
ex:drop table first
3、修改表中字段
(1)添加字段:
关键字:alter、add
alter table 表明 add 字段名 字段类型(字段长度) 约束条件
ex:alter table first add id int(20) promery key
(2)删除字段
关键字:alter、drop
alter table 表名 drop 字段名
ex:alter table first drop id
4、修改表中字段类型及约束条件
关键字:alter、modify
**当需要将字段约束条件删除时,字段后不携带约束条件即可
**约束条件为主键时,不可删除此约束条件,可将主键字段删除,重新添加字段
5、多个表进行主外键关联
主外键关联的作用:对多个表进行主外键关联后,能够起到对多个表中相同数据的增删改查相互约束,如在班级表中删除3年2班,需要考虑学生表中在3年2班的学生班级信息如何处理。
主外键关联约束条件有以下几点:on 删除/修改 属性
ex:on delete/update restrict(属性):表示关联表中的数据删除时,需查询关联表中书否存在关联数据,如果存在,则不允许删除
主要属性如下:
(1)restrict约束:删除父表数据时,需要检查子表中是否存在关联数据,如过存在,则不允许删除
(2)no action约束:同上,如果存在不允许删除
(3)cascade级联:删除父表数据,子表中关联的数据一起删除
(4)set null:删除父表数据时,子表关联数据字段修改为null
**如何添加主外键约束**
(1)对创建好的两个表进行主外键约束
alter table 表名 add constraint 约束名 foreign key(主表的外键字段名) references 关联表名(关联字段)
alter table first add constraint fd foreign key(second_id) references second(id)
(2)创建表过程中,增加主外键约束
constraint 约束名 foreign key(创建表中的关联字段) references 关联表名称(关联表中的id)
constraint fd foreign key(second_id) references second(id)
**如已进行外键关联想要增添加on delete属性时,需要先删除外键,重新添加外键时增加该属性**
alter table emp add constraint emp_dep foreign key(dep_id) references dep(id) on delete restrict on update restrict