也許這只是我,但我無法找到我在其他地方遇到的確切問題的答案。我有一個功能,插入我的數據庫中的記錄是這樣的:只有插入MySQL記錄,如果確切的不存在
function createOpdrachtInstance($opdracht, $bedrijf, $deelnemer) {
$db = dbConnection();
$db->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$query = "INSERT INTO opdrachten_deelnemers (`opdracht_id`,`bedrijf_id`,`deelnemer_id`,`flag`) VALUES (:opdracht_id,:bedrijf_id,:deelnemer_id,:flag)";
$q = $db->prepare($query);
$q->execute(array(':opdracht_id'=>$opdracht,
':bedrijf_id'=>$bedrijf,
':deelnemer_id'=>$deelnemer,
':flag'=>0));
}
工作正常。但是,如果存在完全相同的記錄(除ID之外的所有行),則不應插入它。我發現這是如何工作的1行,但不是如何工作的多行。我如何在我的功能中實現這一點?
感謝您的回答。但這似乎並不奏效。 – aardnoot 2015-02-23 11:24:23
您還需要所有4列的unqiue索引。 – Mihai 2015-02-23 11:29:32
三者的組合應該是獨一無二的。這似乎使得另一條記錄不能存在另一條記錄中存在的任何值。 – aardnoot 2015-02-23 11:41:02