zoukankan      html  css  js  c++  java
  • MySQL的ALTER变更、正则查询、分组查询、排序查询以及事务查询的概

    MySQL的表和字段信息的变更


    ALTER TABLE table-name DROP column-name; #删除某个字段
    ALTER TABLE table-name ADD column-name INT;#添加某个字段(需要指定数据类型),还可以添加未知信息,FIRST , AFTER xxxx
    ALTER TABLE table-name CHANGE source-column-name new-column-name DATATYPE;#更换字段名字和类型
    ALTER TABLE table-name MODIFY column-name DATATYPE NOT NULL DEFAULT 100;# 变更字段约束条件
    ALTER TABLE table-name ALTER column-name SET DEFAULT 1000;# 变更字段约束条件,当然也可以DROP DEFAULT
    ALTER TABLE table-name ENGINE = MYISAM;#变更引擎
    ALTER TABLE old-table-name RENAME TO new-table-name;#修改表名
    ALTER TABLE table-name DROP FOREIGN KEY key-name;#删除外键
    

    正则表达式


    SELECT * FROM table-name WHERE column-name REGEXP '正则表达式内容';#正则的使用
    

    分组查询和排序查询


    SELECT * FROM table-name ORDER BY column-name ASC;#也可以是DESC,排序查询,表名和字段名都可以多个
    SELECT * FROM table-name GROUP BY column-name;#分组查询
    

    MySQL事务


    事务是MySQL保障数据一致性的重要机制,MySQL的事务具备四种基本属性

    1、原子性

    每一个事务只能完全提交或者回滚,不存在事务执行一般的情况。

    2、一致性

    数据一致性状态只能从一中状态成为另外一种一致性状态。

    3、隔离性

    事务与事务的操作相互隔离,这种特性通过锁机制实现。

    4、持久性

    改变了状态就是改变了,不会因为其他原因例如重启等二变动,事务状态改变了,这种改变是永久性的。

    MySQL事务控制语句


    BEGIN
    DO SOMETHING
    COMMIT/ROLLBACK
    

    MySQL的事务隔离级别


    1、未提交读

    SET GLOBAL TRANSATION ISOLATION LEVEL READ UNCOMMITTED;
    

    性能没有显著提高,很少用;

    2、提交读

    SET GLOBAL TRANSATION ISOLATION LEVEL READ COMMITTED;
    

    大多数数据库的默认事务隔离级别,但是不是MySQL的,会有问题存在;

    3、可重复读

    SET GLOBAL TRANSATION ISOLATION LEVEL REPEATEABLE READ;
    

    MySQL的默认事务隔离级别,但理论上有可能导致一个问题,幻读。InnoDB和Flacon存储引擎通过并发控制解决了这个问题。

    4、可串行化

    SET GLOBAL TRANSATION ISOLATION LEVEL SERIALIZABLED;
    

    最高级别,有锁机制实现,强行排序事务,会导致大量的超时和锁竞争。

    InnoDB的锁机制


    1、共享锁

    锁行或者多行,获得锁进行读取;

    2、排它锁

    锁行或者多行,获得锁进行写入;

    3、意向锁

    锁表,可读可写;

  • 相关阅读:
    How to install VXDIAG Honda, Toyota and JLR SDD software
    16% off MPPS V16 ECU tuning tool for EDC15 EDC16 EDC17
    Cummins INSITE locked and ask for verification code
    How to use BMW Multi Tool 7.3 to replace lost key for BMW X1
    Bleed Brake Master Cylinder with Intelligent Tester IT2
    Porsche Piwis Tester II “No VCI has been detected”,how to do?
    Creader VIII VS. Creader VII+
    How to solve GM MDI cannot complete the installation
    汽车OBD2诊断程序开发 (原文转载,思路很清晰!)
    汽车节温器单片机开发思路
  • 原文地址:https://www.cnblogs.com/KevinGeorge/p/9172151.html
Copyright © 2011-2022 走看看