MySQL主要内容

发布于:2024-04-27 ⋅ 阅读:(26) ⋅ 点赞:(0)

1,在表中插入数据

 插入值的类型,必须和字段的类型保持一致
   - 如果数据类型是字符串,必须引号引起来,数字的话,可以不加
   - 插入的数据顺序和字段的顺序必须保持一致
格式一:向表中插入数据
insert into 表名 values(值1,值2,值3)
案例:向表中插入数据
insert into tb001 values(4,"钟无艳",18,"M","beijing")
格式二:
insert into 表名(字段,字段,字段) values(值1,值2,值3)
案例
insert into tb001(age,name,gender) values(66,"韩信","F")
注意点:
     这里仅仅是向部分字段写入值
     没有指定字段,会写如空
     字段的顺序要和值的顺序保持一致
总结:插入数据的方式
insert into 表名 values(值1,值2,值3)
insert into 表名(字段,字段,字段) values(值1,值2,值3)

2,删除表中的数据

drop database 库名               #删除一个数据库
drop table 表名                      #删除一个表
delete from 表名                    #删除表中全部的数据
delete from 表名 where 条件 #删除表中指定的数据
truncate 表名                         #删除表中全部的数据,而且会截断表(id会重新开始自增)

案例

use tb1;
delete from tb001
select * from tb001
delete from tb001 where gender="M" or name="zhangsanfeng"
truncate tb001

3,修改表中数据

格式
update 表名 set 字段=值
update 表名 set 字段=值 where 记录=值
案例:把 id 6 的年龄改成 21
update tb001 set age=21 where id=6
修改数据的字符集
alter database 库名 character set "字符集" collate "排序规则"
案例
alter database tb1 character set "ascii" collate "ascii_general_ci"

4,修改表

增加字段
alter table 表名 add column 字段名 字段属性 after 字段名
删除字段
alter table 表名 drop column 字段名
案例
alter table tb001 drop column phone

5,修改字段名

alter table 表名 change column 字段名 新字段名 属性约束
案例
alter table tb001 change column addr ad varchar(50)

6,修改字段的默认值

alter table 表名 modify column 字段名 字段属性 default 值

修改字段顺序

alter table 表名 modify column 字段名 属性 after 位置
案例
alter table tb001 modify column ad varchar(50) after id

7,数据的备份还原

     导出:先对数据库进行备份,然后提取备份文件中的 sql 语句
      导入:
      方法 1 :创建和原始数据库同名的数据,然后执行从备份文件中导出的 sql 语句【此方法不需
要修改导出 sql 语句】
      方法 2 :在数据库中直接运行导出的 sql 语句【此方法往往需要先修改数据库文件】

8,测试用的数据库:hellodb

students :学生表,这个表中保存了学生的基本信息
classes :班级表,这个表保存了班级的基本信息,包括班级名称、编号等等
courses :课程表,这个表中保存了课程的基本信息,包括课程名等
scores :成绩表,这个表中保存了学生的成绩信息
teachers :老师表
coc :班级和开设的课程的对照关系表
toc :老师和所教授的课程的对照表
students 表的内容:
表结构如下:
stuid :学号
name :学生的姓名
age :学生的年龄
gender :性别
classid :学生所在的班级编号
teacherid :学生的老师的编号
9,简单查询
查询的格式:
select 查询的内容 from 表名 where 条件

表示查询内容的方法:

* :表示所有的内容
一个或者多个字段的名字:表示仅仅查询一个或者多个字段
查询多个字段的时候,多个字段之间 用逗号分割
where 后面的条件的写法
> 大于
>= 大于等于
< 小于
<= 小于等
<> 不等于
!= 不等于
between ... and ... 判断范围
is null 是空
is not null 不是空
like 模糊查询
in 判断某个字段是否在给定的集合中
案例
# age 字段大于20
where age > 20
# age 字段大于等于20
where age >= 20
# id字段小于3
where id<3
# id字段小于等于3
where id <=3
# age字段不是15
where age != 15
where age <> 15
# age字段是15
where age = 15
# name字段为空
where name is null
# name字段不为空
where name is not null
# name字段是以q为开头
where name like "q%" # % 表示的是通配符
# name字段中包含q
where name like "%q%"
# name字段以q为结尾
where name like "%q"
# age是3 或者5 或7
where age in (3,5,7)
where age = 3 or age = 5 or age = 7;
# age大于等于3且小于等于5
where age>=3 and age<=5
where age between 3 and 5
通配符 %
%
表示的任意多个任意字符
可以表示0个、1个或者是多个任意的字符
组合条件的方法:
and 多个条件同时满足
or 多个条件满足任意一个即可
排序
格式:
select 查询内容 from 表名 where 条件 order by 字段名
order by 字段 : 根据指定的字段进行排序
asc :升序【默认是】
desc :降序
指定输出几条记录
格式:select 查询内容 from 表名 where 条件 order by 字段名 limit 数字
默认输出所有符合条件的记录
limit 数字