阅读模式:

mysql表的联合主键

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

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

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

        联合主键的设置:

            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+name+sex等字段确定主键,并且自增id有和其他表有id关联;复合主键不需要自增id,即如name+sex字段确定唯一形成主键,一般在数据上报等情况数据不能重复数据时使用。

分享到:
0 4

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

扫描二维码手机查看

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

发布评论:


登录:
  表情:
评论话题
推荐阅读:
php设置cookie为HttpOnly防止XSS攻击   阅读:11691php生成二维码   阅读:6264phpexcel 超简单从excel表格一键导入数据到数据库教程   阅读:11470HTTP 1.1 协议详解   阅读:9307企业让你去面试,可能不是真的招人   阅读:5460html5 离线缓存的使用   阅读:3965企业让你去面试,可能不是真的招人   阅读:5460centos7中颁发CA证书并开启web https   阅读:6130linux rarcrack破解rar、zip和7z压缩包简单密码的工具   阅读:15333用php从1乘到100的值   阅读:5799给php7安装redis扩展库   阅读:7694面试的时候和你谈理想,是理想or入坑?   阅读:9311javascript获取两个日期间的所有日期   阅读:5932phpexcel 超简单从数据库一键导出数据到excel教程   阅读:6734给php7安装redis扩展库   阅读:7694centos 7 安装 mysql-5.7   阅读:6261crontab+shell脚本实现定时备份mysql数据库   阅读:7077php 使用 smtp.php 类在线发送邮件功能   阅读:5047面试的时候和你谈理想,是理想or入坑?   阅读:9311centos7中颁发CA证书并开启web https   阅读:6130给 centos 7 安装桌面环境   阅读:16137nginx编译安装后对nginx进行平滑升级   阅读:5734mysql5.7主从同步中binlog同步模式详解   阅读:5736简单的DOS攻击之死亡之ping详解   阅读:47903php文件下载防盗链   阅读:9125crontab+shell脚本实现定时备份mysql数据库   阅读:7077centos 7 忘记root密码   阅读:4359linux教程,鸟哥私房菜(pdf全集)   阅读:8760用php从1加到100的值   阅读:7728给 centos 7 安装桌面环境   阅读:16137浅谈javascript的函数节流   阅读:4263php删除一个文件夹内的所有文件夹和文件   阅读:4403PHP 鸟哥:我也曾经是“不适合”编程的人   阅读:13427nginx安装mysql和json模块   阅读:4085面试都会问你为什么你从上一家公司离职的真实意思   阅读:10286centos 7 安装 nginx-1.11.10   阅读:7803php冒泡排序法   阅读:13163关于PHP程序员技术职业生涯规划   阅读:2333linux教程,鸟哥私房菜(pdf全集)   阅读:8760最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:30384十张GIF让你弄懂递归等概念   阅读:5551面试都会问你为什么你从上一家公司离职的真实意思   阅读:10286小米手机端商城rem适配原理   阅读:6281php删除一个文件夹内的所有文件夹和文件   阅读:4403crontab+shell脚本实现定时备份mysql数据库   阅读:7077企业让你去面试,可能不是真的招人   阅读:5460javascript点击复制内容   阅读:6202简单的DOS攻击之死亡之ping详解   阅读:47903linux top命令详解   阅读:8566php删除一个文件夹内的所有文件夹和文件   阅读:4403