我已经创建了这个表
CREATE TABLE mytable (
ID bigint NOT NULL AUTO_INCREMENT,
Caller varchar(255) NOT NULL,
Name varchar(255) NOT NULL,
PRIMARY KEY (ID));
ALTER TABLE `mytable` ADD UNIQUE `unique_index`(`Name`, `Caller`);
问题:
如果我插入
insert into mytable values ('value1','12929393');
进而
insert into mytable values ('value1','12929393');
由于重复而阻止它(没问题)
但如果我插入
insert into mytable values ('value1','12929344');
或者
insert into mytable values ('value2','12929393');
它接受并且我更愿意阻止它因为值 12929393 是重复的,可以在 mysql 或 mariadb 中做到这一点吗?
只需在每一列上分别添加唯一索引,而不是复合索引。
此解决方案也有效