zoukankan      html  css  js  c++  java
  • MySQL相关知识

    1. 主外键标识
      • 如果键是PRI,则列是主键或多列主键中的列之一。
      • 如果键是UNI,则该列是唯一索引的第一列。
      • 如果键为MUL,则该列是非唯一索引的第一列,其中允许在列中多次出现给定值。
    2. MySQL的三大范式
      • 要求具有原子性、字段不可在被分割。
      • 必须满足第一范式的前提下,除了主键外,其它的字段都必须完全依赖主键。
      • 必须满足第二范式的前提下,除了主键外,其它字段之间不能有传递依赖;根据项目的场景适当的降低对范式的要求,提高运行的效率。
    3. 数据库的端口
      • MySQL:3306
      • Oracle:1521
      • SQL Server:1433
    4. 事务的特征
      • 原子性、一致性、隔离性、持久性
      • 事务是一种机制、使用setcommit = 0; 关闭自动提交、1:为自动提交
    5. MySQL的机制
      • InnoID: 支持事务和外键,占用空间比MyISAM大,适用于需要事务处理、更新比较频繁的场景。
      • MyIsAM: 不支持事务和外键,占用空间比InnoDB小,适用于不需要事务处理、查询频繁的场景。
    6. 操作
      • 添加一列:alter table table_name add age varchar(10) not null;
      • 修改一列:alter table table_name change name age varchar(10);
      • 删除一列:alter table salgrade_copy1 drop age;
      • 修改表名称:alter table salgrade_copy2 rename salgrade_copy1;
      • 修改一列的数据类型:alter table salgrade_copy1 modify age char (10);
        • 总结:【添加:add】、【删除、drop】、【修改:change】、【修改类型:modify】、【修改表名:rename】
    7. 索引
      • 唯一约束(Unique Key):如员工姓名:添加上唯一索引,表示该列值不允许重复。
      • 普通索引:查询更快:create index index_name on LouisVan(codemap)
      • 联合索引:体现在多张表中: student_course通过studentId与courseId确定主键id
        • 改表中有字段:id、studentId、courseId
      • 复合索引:name + phone
    8. union
      • select p1.product_name from product1 p1 where p1.product_type = '衣服' union all select p2.product_name from product2 p2 where p2.product_type = '衣服'
    9. exists
      • select * from a where exists (select * from b where a.id = b.aid)
    10. MySQL正则表达式
      • 以1开头
        • select * from salgrade_copy1 where losal regexp '^1';
      • 以1结尾
        • select * from salgrade_copy1 where losal regexp '1$';
      • 包含12
        • select * from salgrade_copy1 where losal regexp '12';
    11. MySQL触发器
      • 当表发生了增、删、改的时候触发。
      • 比如获取推送充电桩状态数据,0位成功,1为失败,触发器可以记录失败的数据并插入到日志表中。
      • 关键字:trigger
    12. 储存过程
      • 好处:大大提升效率,减少与数据库的交互,提高了安全性。
      • 坏处:需要大量的计算、判断数据是否合法,影响数据库的性能。
      • 关键字:procedure
      • 调用方式:call 存储工程名称();
    13. 函数
      • MySQL有五大聚合函数:avg()、count()、mix()、max()、sum();
      • 函数存储这一系列的SQL语句,封装到function中,减少了SQL的重复性、调用函数名称一次性执行这些函数。
      • 关键字:function
      • 调用方式:select 函数名称();
    14. 视图
      • 可视化的表,不建议修改里面的数据
      • 关键字 view
      • 调用方式:select * from 视图名称();
  • 相关阅读:
    Unity3D游戏制作(四)——Asset Server搭建
    查询开户银行的现代化支付行号
    专业版Unity技巧分享:使用定制资源配置文件
    如何建立一个完整的游戏AI
    实现简易而强大的游戏AI——FSM,有限状态机
    iOS 开发 初级:应用内购买 In-App Purchase
    linux每日命令(14):less命令
    flask上传excel文件,无须存储,直接读取内容
    linux每日命令(13):more命令
    linux每日命令(12):nl命令
  • 原文地址:https://www.cnblogs.com/Twittery/p/14517725.html
Copyright © 2011-2022 走看看