mysql基础
学习了一段时间的mysql,现在对所学的知识做些总结归纳,即是对已学知识的回顾,也是一段新的学习。
一、数据库
1)定义:数据库(DataBase) 是按照数据结构来组织、存储和管理数据的仓库。
2)优缺点:
优点:能储存海量数据,有较快的查询速度,数据可以永久保存,有统一的方式操作数据库
缺点:占用资源(重型武器),有些数据库需要付费
3)关系型数据库:mysql,其中有
体积小、速度快、开源免费、简单易用、维护成本低等优点。
二、mysql数据库操作
1. 基本步骤和内容:
新建数据库(DataBase)—> 新建表(Table)—> 插入数据/更新数据/删除数据
- DDL语句(Data Definition Language 数据定义语言)
创建数据库
创建表
修改表结构等 - DML语句(Data Manipulation Language 数据操纵语言) 对数据增、删、改
- DQL语句(Data Query Language 数据查询语言) 对数据查询操作
2.DDL语句(Data Definition Language 数据定义语言)
1.DDL操作数据库
1)创建数据库
#创建数据库
create database <数据库名>;
#创建数据库,并指定字符集(一般为utf8)
create database <数据库名> character set utf8;
2)查看/选择数据库
#切换数据库
use <数据库名>;
#查看正在使用的数据库
select database();
#查看有哪些数据库
show database;
#查看数据库定义信息
show create database <数据库名>;
3)修改数据库
#修改数据库字符集
alter database <数据库名> character set <字符集>
4)删除数据库
#永久删除数据库
drop database <数据库名>
2.DDL操作数据表
1)创建表
create table <表名>(
<字段名称1> <字段类型>,
<字段名称2> <字段类型>
)
#例如:
create table category(
id int,
cname varchar(20)
);
2)创建一个表结构相同的表
create table <新表名> like <旧表名>;
3)查看表
#查看所有表
show table;
#查看表结构
desc <表名>;
4)删除表
drop table <表名>;
drop table if exists <表名>;
5)修改表
①修改表名
rename table <旧表名> to <新表名>
②向表中添加列 add
alter table <表名> add <字段名称> <字段类型>;
③修改列的数据类型或长度 modify
alter table <表名> modify <字段名称> <字段类型>;
④修改列名称 change
alter table <表名> change <旧列名> <新列名> <字段类型>;
⑤删除列 drop
alter table <表名> drop <列名>;
3.DML语句(Data Manipulation Language 数据操纵语言) 对数据增、删、改
1)增:插入数据
insert into <表名> (<字段名1> <字段名2>...) values (<字段值1> <字段值2>...);
2)改:修改数据
#不带条件修改
update <表名> set <列名> = <值>
#带条件修改
update <表名> set <列名> = <值> where <字段名> = <值>
3)删:删除数据
#删除所有数据
delete from <表名> #不推荐
truncate table <表名> # 推荐
#删除指定条件的数据
delete from <表名> where <字段名> = <值>
4. DQL语句(Data Query Language 数据查询语言) 对数据查询操作
1)准备数据
2)简单查询
执行顺序
from -->where -->group by -->having -->select -->order by
select <列名> from <表名>
3)条件查询
select <列名> from <表名> where <条件表达式>
比较运算符 | 说明 |
---|---|
><<=>==<>!= | !=,<>不等于 |
between…and… | 显示某一区间的值 |
in | in中每个数据作为一次条件,满足条件就会显示 |
like’%月%’ | 模糊查询 |
is null | 查询为null的值,反之is not null |
逻辑运算符 | 说明 |
---|---|
and && | 多个条件同时成立 |
or | 多个条件任一成立 |
not | 不成立 |
模糊查询 | 说明 |
---|---|
% | 匹配任意多个字符串 |
- | 匹配任意一个字符串 |