Mysql的联合主键
2017-06-26 14:20
239 查看
摘要: mysql的联合主键:用2个字段(或者多个字段,后面具体都是用2个字段组合)来确定一条记录,说明,这2个字段都不是唯一的,2个字段可以分别重复,这么设置的好处,可以很直观的看到某个重复字段的记录条数。
mysql的联合主键:用2个字段(或者多个字段,后面具体都是用2个字段组合)来确定一条记录,说明,这2个字段都不是唯一的,2个字段可以分别重复,这么设置的好处,可以很直观的看到某个重复字段的记录条数。
在mysql当中我们经常认为主键只能设置一个,那如果我们想设置两个呢?如下图:
那这样的话我们就创建了这个联合主键id和keyword 。但是需要注意的是引擎必须是Myisam。这个是联合主键的创建,那删除呢?
删除也是非常简单只要:
如果你仅仅是删除联合主键会报错:
mysql的联合主键:用2个字段(或者多个字段,后面具体都是用2个字段组合)来确定一条记录,说明,这2个字段都不是唯一的,2个字段可以分别重复,这么设置的好处,可以很直观的看到某个重复字段的记录条数。
在mysql当中我们经常认为主键只能设置一个,那如果我们想设置两个呢?如下图:
CREATE TABLE `test` ( `id` int(11) NOT NULL AUTO_INCREMENT, `date` varchar(25) DEFAULT NULL, `sess_id` varchar(255) DEFAULT NULL, `keyword` varchar(25) NOT NULL, `url_n` varchar(3) DEFAULT NULL, `s_n` varchar(3) DEFAULT NULL, `select_url` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`,`keyword`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
那这样的话我们就创建了这个联合主键id和keyword 。但是需要注意的是引擎必须是Myisam。这个是联合主键的创建,那删除呢?
删除也是非常简单只要:
ALTER TABLE test DROP PRIMARY KEY ,ADD PRIMARY KEY (`id`);
如果你仅仅是删除联合主键会报错:
ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key
原文链接
相关文章推荐
- mysql联合主键的自增问题
- 简单描述mysql中,索引,主键,唯一索引,联合索引的区别,对数据库的性能有什么影响。从读写两方面分析
- mysql 联合主键的大小写敏感问题
- mysql自增长联合主键
- mysql设置联合主键的意义
- mysql设置联合主键的意义
- MySQL中的查询约束语句和主键、联合主键、外键
- mysql 创建联合主键
- mysql 联合主键和复合主键的区别
- Java--批量插入更新在一条sql里解决-mybatis-mysql-联合主键(建立唯一索引)
- mysql中,索引,主键,唯一索引,联合索引的区别
- mysql 联合主键的作用
- mysql联合主键
- SQL Server中的联合主键、聚集索引、非聚集索引、mysql 联合索引
- SQL Server(MySql)中的联合主键(联合索引) 索引分析
- mysql联合主键
- mysql联合主键和单一主键
- mysql 增加一列,并且使用这一列联合其他的列作为联合主键。
- 简单描述mysql中,索引,主键,唯一索引,联合索引的区别,对数据库的性能有什么影响(从读写两个方面)(新浪)
- mysql 修改主键自增,新增联合主键