我的数据库表中有一个唯一的字符串列。表由数据列和删除列组成。如果我试图将一个重复的字符串插入到那个唯一的列中,它将显示复制错误,这正是我想要的。删除的列将指示0为exist,1表示为不存在。
当我试图向数据列中添加唯一字符串时,删除的列为1(不存在),查询将返回重复错误。
我想要什么
id data removed
1 hello 0
2 haha 1 <- remove column, so data column will ignore unique data
3 haha 0 <- New data如何将唯一的字符串插入数据列中,删除值为0?
发布于 2017-10-24 02:53:31
为data和removed一起创建您的removed约束,而不仅仅是为data。
ALTER TABLE `table_name` ADD UNIQUE `unique_name`(`data`, `removed`);但是,如果您想在haha列中保存许多带有1的removed,那么unique约束不是MySQL的一个选项。看看this。
https://stackoverflow.com/questions/46901393
复制相似问题