MySQL建立索引,触发器
创建索引:
ALTER TABLE <表名> ADD INDEX (<字段>);
>ALTER TABLE `table_name` ADD PRIMARY KEY (`column`); 添加PRIMARY KEY(主键索引)
>ALTER TABLE `table_name` ADD UNIQUE (`column`); 添加UNIQUE(唯一索引)
>ALTER TABLE `table_name` ADD INDEX index_name (`column`); 添加INDEX(普通索引)
>ALTER TABLE `table_name` ADD FULLTEXT ( `column`); 添加FULLTEXT(全文索引)
>ALTER TABLE `table_name` ADD INDEX index_name (`column1`,`column2`,`column3`); 添加多列索引
>describe tbale_name; 查看表结构信息
>drop index index_name on table_name; drop删除索引
>alter table table_name drop index index_name; alter drop删除索引
>alter table table_name drop primary key; alter删除索引
创建触发器:
CREATE TRIGGER trigger_name trigger_time trigger_event ON tb_name FOR EACH ROW trigger_stmt;
trigger_name: 触发器的名称
tirgger_time: 触发时机,为BEFORE或者AFTER
trigger_event: 触发事件,为INSERT(INSERT,LOAD DATA,REPLACE)、DELETE(DELETE,REPLACE)或者UPDATE
tb_name: 表示建立触发器的表名
trigger_stmt: 触发器的程序体,可以是一条SQL语句或者是用BEGIN和END包含的多条语句
BEFORE和AFTER 参数指定了触发执行的时间,在事件之前或是之后
FOR EACH ROW 表示任何一条记录上的操作满足触发事件都会触发该触发器
MySQL可以创建以下六种触发器:
BEFORE INSERT, BEFORE DELETE, BEFORE UPDATE
AFTER INSERT, AFTER DELETE, AFTER UPDATE
drop trigger trigger_name; #删除触发器
show triggers; #查询触发器
创建有多个执行语句的触发器
CREATE TRIGGER 触发器名 BEFORE|AFTER 触发事件
ON 表名 FOR EACH ROW
BEGIN
执行语句列表,以; 分隔
END
在BEGIN...END语句中定义变量,但是只能在BEGIN...END内部使用:
DECLARE var_name var_type [DEFAULT value] character set utf8; #定义变量,可指定默认值
SET var_name = value; #给变量赋值
tips:MySQL特殊符号;在触发器中存在冲突,采用在触发器前后单独执行 DELIMITER ||(将结束符号定义为||)和DELIMITER ;(将结束符号还原为;)。
MySQL建立索引,触发器的更多相关文章
- paip.提升性能--- mysql 建立索引 删除索引 很慢的解决.
paip.提升性能--- mysql 建立索引 删除索引 很慢的解决. 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blo ...
- MySQL建立索引的注意事项
对于大数据量的表格,尤其是百万行以上的数据表,一定要对其建立索引,否则查询速度极慢.(参考后面的测试结果)建立索引时需注意: MySQL的索引有两种:单列索引(即在某一列上建索引).多列组合索引(即在 ...
- navicat为mysql建立索引
索引的目的是大大提高查询效率,还有读写效率. kettle向sql里面插入,更新时,也要建立索引,可以大大提升处理时间. 但是建立索引报错:Specified key was too long; ma ...
- mysql建立索引的几大原则
(转)仅供自己学习,特此记录 1.选择唯一性索引 唯一性索引的值是唯一的,可以更快速的通过该索引来确定某条记录.例如,学生表中学号是具有唯一性的字段.为该字段建立唯一性索引可以很快的确定某个学生的信息 ...
- mysql建立索引 删除索引
建立索引 1.添加PRIMARY KEY(主键索引) mysql>ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) 2.添加UNIQUE ...
- 一个Web报表项目的性能分析和优化实践(四):MySQL建立索引,唯一索引和组合索引
先大致介绍下项目的数据库信息. 数据库A:主要存放的通用的表,如User.Project.Report等. 数据库B.C.D:一个项目对应一个数据库,而且这几个项目的表是完全一样的. 数据库表的特点 ...
- 如何为mysql建立索引
前些时候,一位颇高级的程序员居然问我什么叫做索引,令我感到十分的惊奇,我想这绝不会是沧海一粟,因为有成千上万的开发者(可能大部分是使用MySQL的)都没有受过有关数据库的正规培训,尽管他们都为客户做过 ...
- mysql建立索引类型及索引建立的原则
索引类型:Unique(唯一索引,一般为主键),Normal(一般索引,普通字段,可做组合索引),索引方法:BTREE 1.选择唯一性索引 唯一性索引的值是唯一的,可以更快速的通过该索引来确定某条记录 ...
- mysql 建立索引场合及索引使用
索引建立场合: ① where后边字段 适合建立索引 ② order by 排序字段适合建立索引 ③ 索引覆盖 即 所要查询的字段本身就是索引 直接在索引中查询数据. 例如 select name,a ...
- MYSQL建立索引需要注意几点
1.建立索引的时机:若表中的某字段出现在select.过滤.排序条件中,为该字段建立索引是值得的.2.对于like '%xxx'的模糊查询,普通的索引是无法满足的,需要建立全文索引.3.对于有多个条件 ...
随机推荐
- 20165308 实验二 Java面向对象程序设计
20165308 实验二 Java面向对象程序设计 实验二 Java面向对象程序设计 一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:张士洋 学号:20165308 指导教师:娄嘉鹏 ...
- Webpack4 的 Tree Shaking:babel-loader设置modules: false,还是设置"sideEffects": false,待确定
Webpack4 的 Tree Shaking:babel-loader设置modules: false,还是设置"sideEffects": false,待确定 babel-lo ...
- VS2010生成安装包制作步骤 (转)
阅读目录 VS2010生成安装包制作步骤 回到目录 VS2010生成安装包制作步骤 在VS2010中文旗舰版本中生成winForm安装包,可以复制你电脑中的开发环境,避免你忘记了一下配置然后在别的 ...
- cvsnt报错:Administrator: Switch to user failed due to configuration error. Contact your System Administrator
在安装CVSNT一开始用Administrator登录时总是报[login aborted]Switch to user failed due to configuration error. Cont ...
- unicodedata.normalize()/使用strip()、rstrip()和lstrip()/encode和decode 笔记(具体可看 《Python Cookbook》3rd Edition 2.9~2.11)
unicodedata.normalize()清理字符串 # normalize()的第一个参数指定字符串标准化的方式,分别有NFD/NFC >>> s1 = 'Spicy Jala ...
- Hadoop HDFS NameNode工作机制
Secondary namenode 首先,我们假设如果存储在Namenode节点的磁盘中,因为经常需要进行随机访问,还有响应客户请求,必然是效率过低.因此,元数据需要存放在内存中.但如果只存在内存中 ...
- curl发送post请求,统计响应时间
curl -o /dev/null -s -w %{time_namelookup}::%{time_connect}::%{time_starttransfer}::%{time_total}:: ...
- 关于opcdaauto.dll的注册
关于opcdaauto.dll的注册 无论win7_32还是win7_64位都执行一样的CMD命令,即regsvr32 opcdaauto.dll . 如果从网上下载的opcdaauto.dll 文件 ...
- 关于sql 注入,感觉比较全的一篇文章
原文链接 http://netsecurity.51cto.com/art/201705/538863.htm
- [视频播放] HLS协议之M3U8、TS流详解
本文转载自:<hls之m3u8.ts流格式详解> HLS,Http Live Streaming 是由Apple公司定义的用于实时流传输的协议,HLS基于HTTP协议实现,传输内容包括两部 ...