Mysql高级-视图触发器存储过程

1.索引:不要刻意使用索引,是为了加快查询速度时,才使用索引。而且一个表至少可以建立16个索引,切记:索引过多不可,索引要建立在那些经常使用的查询字段上,才能发挥效果。

语法:

  @1.在创建表的时候创建索引:

   CREATE TABLE table_name(
		-- ...
		INDEX|KEY index_name(field1[(长度)] [DESC|ASC],field2..);
	);
  -- UNIQUE |FULLTEXT INDEX|KEY index_name(field1[(长度)] [DESC|ASC],field2..); 
  -- -- 全文索引,Myisam 存储引擎中
  -- @2.表创建完毕后,创建:
  CREATE INDEX  index_name ON table_name(field1,field2..) 
  -- 修改表结构:
  ALTER TABLE table_name ADD INDEX|KEY index_name(field1,field2..) 
  -- 删除索引
  DROP INDEX index_name ON table_name

2.视图:@1.隐藏敏感数据 @2.select语句复用 ,但是不可在视图上进行add,update,delete,否则基表会受影响。

语法:

CREATE  VIEW  view_name AS 
	-- select 语句
SHOW TABLES -- 可以看到创建视图
    SHOW TABLE STATUS FROM db_name -- 查看数据库里的视图信息
    SHOW CREATE VIEW view_name -- 查看视图创建语句
    DESC|DESCRIBE VIEW view_name -- 查看视图数据类型设计
infomation_schemas库中也可以看到
-- @2.修改视图:
  CREATE OR REPLACE VIEW view_name AS 
       -- 语句
      ALTER VIEW view_name AS 
-- @3.删除视图:
drop view view_name 

3.触发器:在表事件发生时,进行某些操作。

语法:

  -- 一条语句 trigger 
	  CREATE TRIGGER trigger_name 
	   BEFORE|AFTER UPDATE|INSERT|DELETE 
	     ON table_name FOR EACH ROW 
	      -- trigger sql 
	      
	     -- 多条语句 trigger 
	 DELIMITER $$ -- 改变sql 语句结尾符号
	 CREATE TRIGGER trigger_name 
	   BEFORE|AFTER UPDATE|INSERT|DELETE 
	     ON table_name FOR EACH ROW 
	       BEGIN
	        -- trigger sql 
	       END$$
	  DELIMITER ; -- sql 语句结尾符号切换回来
 -- @2.删除:
 drop trigger trigger_name 
 -- @3. 查看 trigger 
 show trigger


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值