二十一、mysql数据库

66 阅读2分钟

前提:

  • ① 安装小皮面板(phpstudy),启动MySQL,要配置引擎为InnoDB!!!---> 配置环境
  • ② 安装mysql前端操作app ---> 操作数据库

1. 基本概念

  • 库:1个库包括多个表
  • 表:
  • 1条数据由多个字段组成
  • 字段是属性
  • 数据库的分类:
    • ① 小型数据库:access 微软,indexdb,sqldb
    • ② 中小型数据库:mysql,微软sqlserver(2000,2008...)
    • ③ 大型数据库:甲骨文oracle,IMB,DB2

2. 基本sql语法

-- 表示单行注释

2.1 库相关的语法

2.1.1 创建库

create database 库名称

2.1.2 使用指定的库

use 库名称

2.1.3 删除库

drop database 库名称

2.2 表相关的语法

2.2.1 创建表

create table 表名称(字段名称 字段类型 约束)

  • 字段类型:
    • ① int 数值类型
    • ② varchar 字符类型
    • ③ date 日期(年月日)
    • ④ datetime 时间(年月日时分秒)
  • 约束:
    • ① primary key 主键
    • ② not null 不能为空
    • ③ auto_increment 自增强
    • ④ default 默认
2.2.2 删除表

drop table 表名称

2.2.3 主表和子表的创建
  • ① 创建主表
  • ② 创建子表
  • ③ 配置外键关联关系(子表的外键是主表的主键)
  • ④ 插入数据
  • ⑤ 多表查询

2.3 账号创建+权限设置

  • ① 给库创建账号+设置密码
    • create user '账号'@'%' identified by '密码';
  • ② 给账号设置库的权限(增删改查)
    • grant select,insert,update on 库名称.* to '账号1'@'%'; ---> 给账号1设置了 查询,添加,修改 的权限
    • grant all on 库名称.* to '账号2'@'%'; ---> 给账号2设置了所有权限
  • ③ 刷新
    • flush privileges;

3. 常用sql语句

3.1 插入

insert into 表名称 (字段1,字段2...) value/values (值1,值2...)

3.2 查询

select * from 表名称

3.3 修改

update 表名称 set 字段='值'

3.4 删除

delete from 表名称 where 字段='值'

3.5 软删除(status=0)

update 表名称 set status=0

4. 常用的sql方法

  • max() ---> 最大值
  • min() ---> 最小值
  • sum() ---> 求和
  • avg() ---> 平均值
  • count() ---> 计数
  • distinct ---> 无重复值
  • year() ---> 年份
  • month() ---> 月份
  • day() ---> 日期
  • current_date() ---> 获取当前日期
  • like '王%' ---> 表示找出姓'王'的(第一个字是王)
  • like '%王%' ---> 表示找出有'王'的
  • order by 字段 asc ---> 升序(order by默认升序)
  • order by 字段 desc ---> 降序
  • limit 0,3 ---> 取前三个
  • between A and B ---> 在A-B的范围内
  • and ---> 和
  • or ---> 或
  • as ---> 别名
  • in() ---> 满足其中一个(用于值有多个的情况)

5. sql语句的练习