MySQL入门-索引/视图/触发器
2018-02-06 01:18
465 查看
合并查询结果
SELECT NAME FROM sheet1$ UNION SELECT NAME FROM sheet2$;-- 合并查询结果,去除重复项
SELECT NAME FROM sheet1$ UNION ALL SELECT NAME FROM sheet2$;-- 查询所有结果,不会去除重复项
索引-- 提高查询速度
索引分类
1,普通索引
2,唯一性索引,使用UNIQUE参数设置
3,全文索引FULLTEXT参数设置,全文索引只能创建在CHAR,VARCHAR,TEXT字段类型上。只有MyISAM引擎支持,MySQL默认引擎不支持
4,单列索引
5,多列索引
6,空间索引
一,创建表的时候创建索引
CREATE TABLE 表名(属性名 数据类型[完整性约束条件],
......
属性名 数据类型[完整性约束条件]
[UNIQUE|FULLTEXT|SPATIAL|INDEX|KEY
[别名](属性名 1[(长度)][ASC|DESC])
);
二,在已经存在的表上创建索引
CREATE [UNIQUE|FULLTEXT|SPATIAL]INDEX 索引名 ON 表名 (属性名 1[(长度)][ASC|DESC]);
三,用 ALTER TABLE 语句创建索引
ALTER TABLE 表名 ADD 索引名 (属性名 [(长度)][ASC|DESC]);
删除索引
DROP INDEX 索引名 ON 表名;
视图
视图的作用:
1,使操作简便化
2,增加数据的安全性
3,提高表的逻辑独立性
创建视图:
CREATE [ALGORITHM={undefiend|MERGE|TEMPTABLE}]
VIEW 视图名[(属性清单)]
AS SELECT 语句
[WITH[CASCADED|LOCAL]CHECK OPTION];
CREATE VIEW v1 AS SELECT * FROM sheet1$;
CREATE VIEW v2 AS SELECT TYPE,num FROM sheet1$;
CREATE VIEW v3(t,n) AS SELECT TYPE,num FROM sheet1$;-- 创建别名
SELECT * FROM v3;
CREATE VIEW v4 AS SELECT TYPE,plt FROM sheet1$,sheet2$ WHERE sheet1$.`response`=sheet2$.`response`;
SELECT * FROM v4;
查看视图
DESC v3;
SHOW TABLE STATUS LIKE 'v4'
修改视图
CREATE OR REPLACE VIEW;
触发器
触发器(TRIGGER)由事件来触发某个操作,这些事件包括 INSERT 语句/UPDATE 和 DELETE 语句。
创建有多个执行语句的触发器
CREATE TRIGGER 触发器名 BEFORE|AFTER 触发事件
ON 表名 FOR EACH ROW
DELIMITER |
BEGIN
执行语句
END
DELIMITER;
查看触发器
SHOW TRIGGERS
删除触发器
DROP TRIGGER 触发器名;
SELECT NAME FROM sheet1$ UNION SELECT NAME FROM sheet2$;-- 合并查询结果,去除重复项
SELECT NAME FROM sheet1$ UNION ALL SELECT NAME FROM sheet2$;-- 查询所有结果,不会去除重复项
索引-- 提高查询速度
索引分类
1,普通索引
2,唯一性索引,使用UNIQUE参数设置
3,全文索引FULLTEXT参数设置,全文索引只能创建在CHAR,VARCHAR,TEXT字段类型上。只有MyISAM引擎支持,MySQL默认引擎不支持
4,单列索引
5,多列索引
6,空间索引
一,创建表的时候创建索引
CREATE TABLE 表名(属性名 数据类型[完整性约束条件],
......
属性名 数据类型[完整性约束条件]
[UNIQUE|FULLTEXT|SPATIAL|INDEX|KEY
[别名](属性名 1[(长度)][ASC|DESC])
);
二,在已经存在的表上创建索引
CREATE [UNIQUE|FULLTEXT|SPATIAL]INDEX 索引名 ON 表名 (属性名 1[(长度)][ASC|DESC]);
三,用 ALTER TABLE 语句创建索引
ALTER TABLE 表名 ADD 索引名 (属性名 [(长度)][ASC|DESC]);
删除索引
DROP INDEX 索引名 ON 表名;
视图
视图的作用:
1,使操作简便化
2,增加数据的安全性
3,提高表的逻辑独立性
创建视图:
CREATE [ALGORITHM={undefiend|MERGE|TEMPTABLE}]
VIEW 视图名[(属性清单)]
AS SELECT 语句
[WITH[CASCADED|LOCAL]CHECK OPTION];
CREATE VIEW v1 AS SELECT * FROM sheet1$;
CREATE VIEW v2 AS SELECT TYPE,num FROM sheet1$;
CREATE VIEW v3(t,n) AS SELECT TYPE,num FROM sheet1$;-- 创建别名
SELECT * FROM v3;
CREATE VIEW v4 AS SELECT TYPE,plt FROM sheet1$,sheet2$ WHERE sheet1$.`response`=sheet2$.`response`;
SELECT * FROM v4;
查看视图
DESC v3;
SHOW TABLE STATUS LIKE 'v4'
修改视图
CREATE OR REPLACE VIEW;
触发器
触发器(TRIGGER)由事件来触发某个操作,这些事件包括 INSERT 语句/UPDATE 和 DELETE 语句。
创建有多个执行语句的触发器
CREATE TRIGGER 触发器名 BEFORE|AFTER 触发事件
ON 表名 FOR EACH ROW
DELIMITER |
BEGIN
执行语句
END
DELIMITER;
查看触发器
SHOW TRIGGERS
删除触发器
DROP TRIGGER 触发器名;
相关文章推荐
- MySQL优化之表索引、视图、内置函数、预处理、事务处理、存储、触发器
- MySQL笔记---视图,存储过程, 触发器的使用入门
- mysql 索引,视图,触发器
- Day4 MySql触发器视图索引以及设计优化
- mysql索引,视图,游标,触发器,事物,存储过程
- MySQL 系列(三)你不知道的 视图、触发器、存储过程、函数、事务、索引、语句
- MySQL快速入门12----删除数据 & 备份还原 & 视图 & 事务 & 触发器
- MySQL: table、view、trigger、procedure、index (表、主键、UNIQUE Key、列、索引、视图、触发器、存储过程)查看、修改、更新、删除操作
- MySQL视图、索引、存储过程、触发器
- mysql索引视图触发器
- MySQL 系列(三)你不知道的 视图、触发器、存储过程、函数、事务、索引、语句
- MySQL快速入门12----删除数据 & 备份还原 & 视图 & 事务 & 触发器
- MySQL 系列(三)你不知道的 视图、触发器、存储过程、函数、事务、索引、语句
- 14.数据库oracle必学,其他最好了解一种以上(mysql,sql server,access==) oracle:视图,索引,存储过程,触发器,游标,包,常用函数
- mysql事务、触发器、视图、存储过程、函数
- MySQL 视图入门
- MySQL 触发器 存储过程 自定义函数 视图 简单示例
- mssql:t-sql;创建表;给表添加约束;使用变量;事务,索引,视图;存储过程;触发器trigger
- 关于Mysql索引的入门用法
- Mysql高级-视图触发器存储过程