MySQL添加/删除主键、外键、唯一键、索引、自增
2016-10-22 10:45
731 查看
主键
主键会自动添加唯一索引,所以主键列不需要添加索引建表时设置主键
create table tableName( id int primary key ); 或: create table tableName( id int, primary key (id) );
单独设置主键
alter table tableName add primary key(id)
删除主键
alter table tableName drop primary key;
外键
建表时添加外键
create table tableName1( tableName2_id int not null, foreign key(tableName2_id) references tableName2(id) );
单独添加外键
alter table tableName1 add constraint tableName1_ref_tableName2(foreignKeyName) foreign key(tableName2_id) references tableName2(id);
删除外键
alter table table1 drop foreign key foreignKeyName;
唯一键
唯一键会自动添加唯一索引,所以唯一键列不需要添加索引建表时添加唯一键
create table tableName( columnName int unique ); 或: create table tableName( columnName int, unique key(columnName) );
单独添加唯一键
alter table tableName add unique key(columnName)
删除唯一键
alter table tableName drop index columnName;
索引
很多情况,mysql中的索引index和键key是同义词。fulltext全文索引,只有MyISAM引擎支持,就不说了。
建表时添加索引
create table tableName( columnName int key//这里只能用key不能用index ); 或: create table tableName( columnName int, key/index (columnName) ); 或: create table tableName( columnName int, key/index indexName(columnName) ); 多列索引: create table tableName( columnName1 int, columnName2 int, key/index indexName(columnName1,columnName2) );
单独添加索引
alter table tableName add key/index indexName(columnName)//单列索引 alter table tableName add key/index indexName(columnName1,columnName2,columnName3)//多列索引
删除索引
alter table tableName drop key/index columnName;
自增
auto_increment必须要求该列是主键(或别的键,详细请看文章:http://blog.csdn.net/u012643122/article/details/52643888)建表时添加自增
create table tableName( columnName int unique auto_increment ); 或: create table tableName( columnName int primary key auto_increment );
单独添加自增
alter table tableName change columnName columnName int unique auto_increment; 或: alter table tableName change columnName columnName int primary key auto_increment;
删除自增
alter table tableName change columnName columnName int;
设置自增初始值
create table tableName( columnName int primary key auto_increment )auto_increment=1; 或: alter table tableName auto_increment=1;
相关文章推荐
- Mysql添加和删除唯一索引、主键
- Mysql添加唯一索引时,删除重复记录
- mysql 创建 主键索引 唯一索引 全文索引 多列索引 添加索引
- MySQL的几个概念:主键,外键,索引,唯一索引
- MySQL--修改数据表5:删除主键约束,唯一约束,外键约束
- mysql 创建 主键索引 唯一索引 全文索引 多列索引 添加索引
- MySQL主键,外键,索引,唯一索引
- mysql 创建 主键索引 唯一索引 全文索引 多列索引 添加索引
- mysql 创建 主键索引 唯一索引 全文索引 多列索引 添加索引
- MySQL的几个概念:主键,外键,索引,唯一索引
- mysql 创建 主键索引 唯一索引 全文索引 多列索引 添加索引
- MySQL的几个概念:主键,外键,索引,唯一索引
- Mysql更新表_删除表列,添加表主键自增语句——添加外键——删除外键索引
- MySQL的几个概念:主键,外键,索引,唯一索引
- mysql 创建 主键索引 唯一索引 全文索引 多列索引 添加索引
- MySQL的几个概念:主键,外键,索引,唯一索引
- MySQL的几个概念:主键,外键,索引,唯一索引
- MySQL的几个概念:主键,外键,索引,唯一索引
- MySQL的几个概念:主键,外键,索引,唯一索引
- MySQL的几个概念:主键,外键,索引,唯一索引