我有一个变量$ Title并包含以下内容:
$Title = aa, bb, cc, dd, ee, ff
$Pubdate = aa, bb, cc, dd, ee, ff
$Link = aa, bb, cc, dd, ee, ff
我将其插入表中,列名为Title。 (到目前为止很简单)
但是,变量每1小时更新一次,例如可能会变为此。
$Title = cc, dd, ee, ff, gg, hh
$Pubdate = cc, dd, ee, ff, gg, hh
$Link = cc, dd, ee, ff, gg, hh
仅供参考:$Title
的“aa”值与$Pubdate
或$Link
的“aa”值不同,但彼此相关联
我想知道是否有办法避免重复值再次进入表中,因此只有'gg'和'hh'进入。
我知道如果你指定一个值,你就可以轻松地做到这一点,例如
INSERT IGNORE INTO ytable (Title, Pubdate, Link) VALUES ('aa','aa');
但是当它更新时,我不确定下一个值是什么,所以我需要你的帮助。
答案 0 :(得分:2)
您需要在数据库上设置UNIQUE
约束。这样,每当您尝试插入具有相同值的行时,数据库都会拒绝该行。
以下是您可能需要调整的示例查询:
ALTER TABLE foo MODIFY Title VARCHAR(255) NOT NULL UNIQUE;
这可确保当您尝试插入没有唯一Title
值的行时,数据库会发出抗议。