链接数据库

  • 添加环境变量
  • cmd —> mysqld 开启服务端
  • cmd —> mysql 开启客户端
  • sqlyog 可视化操作界面

image.png

用户管理

  • 添加用户
    • creater user “用户名”@”用户IP” identified by “密码”;
  • 添加权限
    • grant select, drop, update,… on “表名” to “用户名”@”用户IP”;
  • 删除用户
    • drop “用户名”@”用户IP”;

数据库操作

  • 创建数据库create database 数据库名;
    • default charset=utf8 避免中文乱码
  • 查看数据库:show databases;
  • 删除数据库:drop database 数据库名;

数据表操作

查询

  • 查看当前数据库下的所有数据表:show tables;
  • 查看数据表结构 DESCRIBE table;

插入

  • 创建表
    • create tabel 表名(字段1 条件1,字段2 条件2,) ;
      • default charset=utf8 中文不乱码
      • engine=innodb 保证数据原子性,宕机可回滚,不出现数据紊乱
      • primary key 主键:是唯一的
      • auto_increament 自增: 一般搭配主键使用
      • not null 规定该字段不能为空

image.png

  • 常用数据类型 | 字符型 | 整数 | 浮点型 | 时间型 | | :—- | :—- | :—- | :—- | | char(位数) 定长字符串 | tinyint 1bytes | number 全精度 | date 日期 YYYY-MM-DD | | varchar 不定长字符串 | int 4bytes | float 单精度 | datetime 日期+时间 YYYY-MM-DD HH-MM-SS | | text 大文本 | bigint 8bytes | double 双精度 | time 时间 HH-MM-SS | | 枚举型 enum(value1,value2…) | | | timestamp 时间戳 YYYYMMDD HHMMSS |
  • char和varchar的区别
    • char()
      • 固定位数,如果确定位数为10,但是数据为两位,但是空间占用还是10位。
      • 虽然占用内存大,但是读取速度更快
    • varchar
      • 不固定位数,占用内存大


  • tips:
    • 建议将定长列放于不定长列前面,这样查询速度快一些。
    • 对于视频,图片等媒体文件,建议使用url存储
    • 如果需要非常精准的浮点型数值建议使用number,因为number是全精度数值
  • 插入数据
    • insert into 表名(字段1,字段2,) values(值1,值2,);
    • 如下,因为id是自增的所以,没有插入id值,id默认从1开始自增

image.png

查询

  1. - 查看所有数据:select * from 表名
  2. - 查看部分数据:select 字段1,字段2 from 表名;

image.png

修改

  • 修改所有 update 表名 set 字段1=值1,字段2=值2;

image.png

  • 条件修改 update 表名 set 字段1=值1,字段2=值2 where 字段=条件;

image.png