MYSQL 索引 主键 外键
来源:互联网 发布:js改变style display 编辑:程序博客网 时间:2024/05/17 06:41
MYSQL 索引 主键 外键
解释:
索引可分为普通索引和唯一索引,主要用于提高访问速度,普通索引允许索引列内容重复,唯一索引不允许重复;
主键具有唯一索引的特性,用于唯一标识记录,一个表只能一个主键;
外键具有普通索引的的特性,是关联表的主键,用于多表级联,维护多表数据一致性。
注意:外键必须是一个索引,数据库引擎必须是InnoDB;
索引:
创建:①直接创建: 例如: create [unique]index index_name on table_name(column_name,... [desc/asc]); ②修改表结构添加: 例如: alter table table_name add [unique]index index_name (column_name,...[desc/asc]);删除:①直接删除: 例如: drop index index_name on table_name; ②修改表结构删除: 例如: alter table table_name drop index index_name;
主键:
创建:① 创建表的时候创建: 例如: create table table_name( id int not null auto_increment, name varchar(20)not null, primary key(id) ); 或: create table table_name( id int not null auto_increment primary key, name varchar(20)not null, ); ② 修改表结构添加: 例如: alter table table_name add primary key (id);删除:① 修改表结构删除: 例如: alter table table_name drop primary key;
外键:
创建:①创建表的时候创建: 例如: create table table_name( id int not null auto_increment, foreign_id varchar(20)not null, primary key(id), constraint constraint_name foreign key (column_name) references relation_table_name(relation_table_column_name) on [delete|update][no action|cascade|set null|restrict|set default] ); 或: create table table_name( id int not null auto_increment, foreign_id varchar(20)not null, primary key(id), foreign key (column_name) references relation_table_name(relation_table_column_name) on [delete|update][no action|cascade|set null|restrict|set default] ); ②修改表结构添加: 例如: alter table table_name add foreign key (column_name) references relation_table_name(relation_table_column_name) on[delete|update][no action|cascade|set null|restrict|set default]; 或: alter table table_name add constraint constraint_name foreign key (column_name) references relation_table_name(relation_table_column_name);删除:①修改表结构删除: 例如: alter table table_name drop foreign key constraint_name;
delimiter :分隔符
触发器trigger:
说明:①tri是触发器名字②ball是表名③score是ball表中的字段④”-“ 是使用的limiter 定义的分隔符,为了begin ···end 语句的使用 ⑤此触发器的目的是当更新ball表中score列数据,如果新值<旧值,拒绝更新;
delimiter -
create trigger tri after update on ball
for each row
begin
if old.score> new.score
then
update ball set score=old.score where id= old.id;
end if;
end-
delimiter ;
0 0
- mysql主键,外键,索引
- mysql主键 外键 索引
- MySQL主键、外键、索引
- MYSQL 索引 主键 外键
- mysql建表-主键-索引-外键
- mysql建表-主键-索引-外键
- MySQL之主键、外键、索引
- 【Mysql】主键,外键,索引,唯一索引
- MySQL主键,外键,索引,唯一索引
- mysql学习-主键,外键,约束,索引
- 【MySQL】数据类型&时间戳&主键&外键&索引
- MySQL数据库(主键、索引、外键、触发器...)
- mysql 主键 索引
- MySQL:联合主键、索引
- MySQL索引之主键索引
- MySQL的几个概念:主键,外键,索引,唯一索引
- MySQL的几个概念:主键,外键,索引,唯一索引
- MySQL的几个概念:主键,外键,索引,唯一索引
- 学习笔记TF008:机器学习基础 线性回归
- javascript中给结构添加标签并添加上类
- LeetCode-E-Palindrome Linked List
- PMOS 和 NMOS使用总结
- nexus-3.0.0-03-win64
- MYSQL 索引 主键 外键
- 建立自已的YUM源服务器,并rpmbuild自已的rpm包
- 欢迎使用CSDN-markdown编辑器
- [转载]Python2.x和Python3.x的区别
- Spark搭建过程(小白带所有安装包)
- SAP HANA SQL获取某字符串的位置
- Python27 34 35 36安装scipy
- 贪吃蛇系列开篇----设计智能贪吃蛇小游戏
- XMPP协议介绍【2017/05/13】