create table table_name
(
Column_definition,
[unique | fulltext ] index | key [index_name] (col_name [(len)] [asc | desc] )
);
unique 和 fulltext : 可选参数
分别表示唯一索引和全文索引
全文索引在 5.6 版本以后才支持
index 和 key
为同义词,任选其一,作用相同
len
索引长度,只有字符串类型的字段才能指定索引长度
create [unique | fulltext] index index_name on table_name
(col_name [(len)] [asc | desc],..... );
create index index_id on data(name);
alter table table_name add index | key [index_name]
(col_name [(len)] [asc | desc],..... );
alter table data add index index_num (number);
视图的作用
简单性
安全性
逻辑独立性
create [or replace] [algorithm = {undefined | merge | temptable }]
view view_name [(column_list)]
as select_statement
[with [cascaded | local ] check option ]
replace
表示替换已经创建的视图,若视图不存在,则创建一个视图。
algorithm
表示视图的算法,可选择 undefined , merge, temptable
undefined 自动选择算法
merge 将使用的视图语句与视图定义合并,使得视图定义的某一部分取代语句对应的部分
temptable 将视图的结果存入临时表,然后用临时表来执行语句
[with [cascaded | local ] check option ]
表示视图在更新时保证在视图的操作权限范围之内
cascaded
表示更新视图时要满足所有相关视图和表的条件
local
表示更新视图时满足视图本身定义的条件
创建视图时要注意
1. describe view_name | desc view_name
2. show table status like 'view_name';
3. show create view 'view_name';
4. select * from database_name.views
where table_name = 'view_name';
create or replace view
[algorithm = {undefined | merge | temptable }]
view view_name [ { column_list } ]
as select_statement
[with [cascaded | local ] check option ]
alter view
[algorithm = {undefined | merge | temptable }]
view view_name [ { column_list } ]
as select_statement
[with [cascaded | local ] check option ]
drop view [if exists ] view_name [, view_name2]..
restrict | cascade ]
原文:https://www.cnblogs.com/duoban/p/11742933.html