<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

一、查看数据库支持的引擎(同时查看关于对应引擎的一些功能支持)

            <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  1)、MyISAM

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  2)、InnoDB

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  3)、desc/describe/show create table  (查看相关建表语句)

              <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

二、表结构操作

  1)、修改字段名称

                <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充    

                <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  2)、添加字段

                     <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  3)、删除字段

             <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  4)、修改字段位置

           <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

                         <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  5)、修改表引擎

                     <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充         

 

  6)、删除表

                        <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

三、索引

  1)、类型:一般为两种 – BTREE、HASH

             一般MyISAM与InnDB为BTREE,Memory可为HASH与BTREE

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  2)、索引的设计原则

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  3)、索引创建

    1、创建一般索引

                    <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

    2、创建唯一索引

                                                       <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

    3、创建组合索引(注意组合索引使用的最左匹配原则)

                                        <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

    4、全文索引(主要是前面添加 fulltext,前面唯一索引是添加unique)

                                              <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  4)、创建表后通过修改添加索引

    1、第一种写法

                     <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

    2、第二种写法

                    <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  5)、删除索引

    1、第一种

                                         <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

    2、第二种

                                          <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  6)、创建短索引(在创建的时候为字段添加长短)

                       <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  7)、查看表已创建索引

                                <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

                           <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

    8)、explain(查看索引的使用情况)

                    <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

                     <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

      通过这里的explain与前面show index的对照,我猜下这里关于组合索引的最左匹配原则(因为关于一些知识点我喜欢进行逻辑自洽的理解)。这里关于where条件的处理,应该首先是通过where后面的初始,去索引里面查(因为我们通过show index查看,组合索引的每个字段其实是分开的,通过Sql_in_index,来看其顺序),所以如果只有一个字段,首先根据字段名以及其是where参数位置,其在索引信息就通过Sql_in_index=1 + Column_name=xxx这种组合来查,当然以上纯属猜测。

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

四、存储过程与函数

  1)、存储过程定义

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  2)、变量定义

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  3)、定义条件及处理程序

       1、先直接看一个对比demo,有个基本了解

                    <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

               <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充                                                                                      <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

         这里我们可以看到插入重复数据的错误状态码是 1062(23000),而我们定义的declare 是continue,这个就表示如果出现这种状态也继续执行,所以@x1是为2。

                  <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

                                                        <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

      这里我们再将continue改为另一种值(exit)可以看到,现在@x1=1,表明发生23000这种状态错误的时候,就不继续执行了。

         2、具体介绍

               <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

  4)、流程控制

    1、if用法 

                      <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

            <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充  <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

    2、case用法

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

                      <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

                         <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

    3、loop用法

                     <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

             <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充        <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

    4、iterate用法

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

               <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

      <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充 <<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

    5、repeat用法

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

    6、while用法

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充

<<MYSQL从零开始>>笔记--对<<MYSQL必知必会>>补充