MySQL索引,视图,存储过程,触发器

索引
   1.普通索引
    alter table 表名 add index  索引名(列);
   2.唯一索引
    alter table 表名 add unique  index  索引名(列);
   3.单列索引
    alter table 表名 add index 索引名(列);
   4.组合索引
    alter table 表名 add index 索引名(列1,列2,列3);
   5.全文索引(只为char、varchar、text列做全文索引)
    alter table 表名 add fulltext index 索引(info);
   6.空间索引(只为空间类型的字段必须为非空如:列名 geometry not null)
    alter table 表名 add spatial index 索引名(列);
    7.创建索引语法
     Create [unique唯一性索引|fulltext全文索引|spatial空间索引] index  索引名 on 表名(列名)

判断索引是否被使用
    explain select * from 表名 where 索引列条件
查看索引
    show create table 索引表名
    show index from 索引表名\G
删除索引
    alter table 表名 drop index 索引名;
    drop index 索引名 on 表名;


视图
    1.创建单表视图
    create  view 视图名 as select 表列1,表列2...  from 表;
    2.创建多表视图
    create view 视图名(视图列) as select 表1列,表2列  from 表1,表2 where 条件

查看视图
    show table status like '视图名'\G
查看详细视图
    show create view 视图名\G
查看数据库中所有视图(views是所有视图)
    select * from information_schema.views\G
修改视图
    create or replace view 视图名 as select 列名 from 表名;
    alter view 视图名 as select 列名 from 表名;
更新视图(update表和视图都会被更改值)
    update 视图名 set 列名=值
插入数据(insert表和视图都会被插入值)
    insert 表名 value (值1,值2);
删除数据(delete表和视图都会被删除)
    delete from 表名 where 条件
删除视图
    drop view 视图名;


存储
最好先修改结束符(delimiter)
   1.创建存储
    create procedure 存储名() begin 条件(select什么的都可以) end(结尾);            //begin开头,end结尾
    使用存储 call 存储名()
   2.带in的存储(变量会在存储里面变化,出来不变)
            设置临时变量 set  @a=200
            查看变量 select  @a
    create procedure 存储名(in  变量 数字类型) begin 条件 and
   3.带out的存储(进去都为null,变量会在存储里面变化,出来是存储的值)
    create procedure 存储名 (out 变量 数字类型) begin 条件 and
   4.带inout的存储(进去不会变化,变量会在存储里面变化,出来是存储的值)
    create procedure 存储名 (inout 变量 数字类型) begin 条件 and 
查看存储语法
    show create procedure 存储名
查看存储语句
    show procedure status like  '存储名';
删除存储过程
    drop procedure 存储名;


触发器
创建一个insert的触发器
    Create trigger 触发器名 after insert on数据表 for each row begin 条件 end       //trigger触发器   after在…之后 insert插入  on在…之上for each row每一行触发器

创建一个update的触发器
    Create trigger 触发器名 after update on数据表 for each row begin 条件 end       //trigger触发器   after在…之后 update 更新  on在…之上for each row每一行触发器

创建一个delete触发器
    Create trigger 触发器名 after delete on数据表 for each row begin 条件 end       //trigger触发器   after在…之后 delete 删除  on在…之上for each row每一行触发器

查看触发器
    Show triggers\G(全部的)
    show create trigger 触发器名\G(查看详细的单个)
    show triggers from  数据库(查看数据库里的触发器)
删除触发器
    Drop trigger 触发器名;

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值