阅读模式:

mysql表的联合主键

查看:14372  回复:2  类型:  来源:php自学网  标签 mysql

        mysql表的联合主键是由表的多列字段值的拼接成的主键,来形成唯一性。和以往单个列的普通主键如id(自增长)的区别是一个字段主键和多个字段的区别。

        如果一个表有id,name,sex,nunber三个字段,那普通主键表的主键为id值区分唯一性。联合主键为name+number值来区别唯一性,或name+sex+number拼接的值来区分唯一性。

、联合主键

alter table 表名 add index index_name (name,sex,number);

二、复合主键

    1.新建表的设置

create table test(
    id int(10) not null auto_increment,
    name varchar(20) not null,
    sex int(1) not null,
    primary key (id,name,sex)
);

mysql复合主键.png

    2.已有表修改为复合主键

alter table 表名 add primary key (字段1,字段2,字段3);

 *如果执行上面操作提示表不能有多个主键错误时,需要先清理主键约束,再执行添加。

alter table 表名 DROP PRIMARY KEY add primary key (字段1,字段2,字段3);

    3.适用场景举例

  如在一个商城的订单表中订单流水编号时唯一的,当同单个人购买多个不同物品时就需要用到复合主键(id+name+订单id)。

复合主键与联合主键共同点在于都是通过多个字段确定主键,区别是复合主键通过如主键和其他等字段确定主键;联合主键不需要自增id的其他字段确定唯一形成主键;

分享到:
0 4

*有问题之处烦请在评论中指出非常感谢!
不是我想要的内容,继续搜索:

扫描二维码手机查看

最新评论:
怡小宝  发表于 2018-08-24 18:58:17  中国广东深圳电信
沙发
大哥你说的是联合主键啊 , 回复
站长 回复 怡小宝 感谢指出错误,已调整。
2018-08-25 09:01 中国广东深圳电信 回复
回复:[主题]
表情:
 提交评论
清空

发布评论:


登录:
  表情:
评论话题
推荐阅读:
给 centos 7 安装桌面环境   阅读:16457php连接redis   阅读:5425把php session 会话保存到redis   阅读:6895web项目高并发量网站解决方案   阅读:4382shell发送邮件脚本   阅读:7102centos 7搭建zabbix3.4   阅读:6120给 centos 7 安装桌面环境   阅读:16457php文件下载防盗链   阅读:9449最新centos7 搭建LNMP环境(centos7.2+php7+mysql5.7+nginx1.11+redis3.2)   阅读:10517十张GIF让你弄懂递归等概念   阅读:5797centos 7 安装 samba 服务   阅读:6434web项目高并发量网站解决方案   阅读:4382javascript获取两个日期间的所有日期   阅读:6242linux时间戳有趣的情人节秒1234567890   阅读:5180给网站添加一键新浪微博登录的功能   阅读:6239php+redis实现消息队列   阅读:13707php设置cookie为HttpOnly防止XSS攻击   阅读:12204centos 7搭建zabbix3.4   阅读:6120mysql5.7开启sql日志的配置   阅读:8616Nginx 配置文件详解   阅读:4415php显示刚刚、几分钟前、几小时前、几天前的函数   阅读:8010shell发送邮件脚本   阅读:7102html5 离线缓存的使用   阅读:4161最新centos7 搭建LNMP环境(centos7.2+php7+mysql5.7+nginx1.11+redis3.2)   阅读:10517面试的时候和你谈理想,是理想or入坑?   阅读:9856封装php redis缓存操作类   阅读:8703centos 7.2 添加php7 的 php-fpm 开机启动   阅读:23703php连接redis   阅读:5425纯干货,程序员面试的超实用技巧   阅读:4035html5 离线缓存的使用   阅读:4161关于PHP程序员技术职业生涯规划   阅读:2610php 统计网页打开耗时和脚本运行内存   阅读:6502php 读取和设置redis的键值   阅读:6989linux教程,鸟哥私房菜(pdf全集)   阅读:9406shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:8551给网站添加一键qq登录的功能   阅读:7021shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:8551爱编程,也爱健康   阅读:4038把php session 会话保存到redis   阅读:6895给网站添加一键qq登录的功能   阅读:7021封装php redis缓存操作类   阅读:8703移动端自适应rem原理   阅读:9385十张GIF让你弄懂递归等概念   阅读:5797网站性能优化-页面静态缓存   阅读:5269centos 7 设置 nginx-1.11.10 开机启动   阅读:7700centos 7 修改系统屏幕分辨率   阅读:43070什么是天使轮?什么是A轮融资?B轮融资?   阅读:4655Mysql在大型网站的应用架构演变   阅读:4409shell脚本批量删除几天前的文件   阅读:9353php翻转字符串   阅读:3270