mysql - sql 如何约束多列中所有值均不同?
伊谢尔伦
伊谢尔伦 2017-04-17 12:57:32
[MySQL讨论组]

如有一表结构:

CREATE TABLE t1(
    c1 INT,
    c2 INT,
    c3 INT
);

我如何写约束使得对任何两行,第一行的 c1, c2, c3 中任何一个与第二行的 c1, c2, c3 的任何一个均不同,且每一行的 c1, c2, c3 彼此不同?

Update:
查了 stackexchange 人家表示 unique 约束写不了,不过可以写 check 解决~
看看童鞋们有没有好办法。。。

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(3)
PHP中文网

只能写check加约束了

PHP中文网

感觉这种约束可能实现不了。
换种思路的话,需要在对表进行INSERT、UPDATE、DELETE的时候获取相关行,判断一下。

ringa_lee

换种思维: 把要存的多列值放到一个列, 给这个列加唯一约束, 加个额外的属性标识属于不同的用途

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号