mysql数据对象--课程笔记

来源:互联网 发布:深圳大数据公司排名 编辑:程序博客网 时间:2024/05/11 06:55

mysql常见的数据对象

database/schema

table

index

view/trigger/function/procedure


多database用途

业务的隔离

资源的隔离:一个database中有很多表,开表会很慢


索引--数据库中数据的目录

索引和数据是两个对象

索引主要是用来提高数据库的查询效率

数据库中数据变更同样需要同步索引数据的变更


创建索引

1. create [unique|fulltext|spatial] index index_name [index_type] on tbl_name (index_col_name,...) [index_option]  [algorithm_option | lockoption]

index_col_name: col_name[(length)] [asc|desc]

index_type: using{BTREE|HASH}

fulltext--全文检索

spatial--地理位置检索


2. alter table add [column] (col_name) add{indexkey} [index_name]


约束

唯一约束

对一张表的某个字段或者某几个字段设置唯一建约束

唯一约束是一种特殊的索引,可以使用唯一约束提高查询性能

唯一约束可以是一个或者多个字段

唯一约束可以在建表的时候建好,也可以后面再补

主键也是一种唯一约束


添加主键

alter table `order` add primary key(id);

添加唯一索引

alter table `order` add unique key inx_uk_orderid(orderid);


外键约束

两张表的数据通过某种条件联系起来


alter table `order` add CONSTRAINT  constarint_uid FOREIGN KEY (userid) REFERENCES `user` (`userid`)

注意事项

必须是innodb表,myisam和其他引擎不支持外键

相互约束的字段类型和字符编码必须要一样

主表的约束字段要求有索引

约束名称必须要唯一,即便不在一张表上


View

视图将一组查询语句构成的结果集,是一种虚拟结构,并不是实际数据

视图能简化数据库的访问,能够将多个 查询语句结构化为一个虚拟结构

视图可以隐藏数据库后端表结构,提高数据库的安全性


创建视图

create view order_view as select * from `order` where status=1;




2 0
原创粉丝点击