你好,我需要一些幫助,我的查詢。查找重複,sql不起作用
一些解釋我的表名從荷蘭到英國: Beantwoordevraag - answeredquestion, Toets - 考試, vraagvraagid - questionid, toetsessieid - examsessionid。
$sql = "SELECT antwoord FROM Beantwoordevraag WHERE ToetssessieID = '$sesID' AND VraagvraagID = '$vid' LIMIT 1";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
echo "There already is an exisiting answer to this question";
}
else{
$sql2="INSERT INTO `test`.`Beantwoordevraag` (`bvID`, `resultaat`,`VraagvraagID`, ToetstoetsID`, `AccountaccountID`, `antwoord`, `datum`,`ToetssessieID`)
VALUES (NULL, 'y','$vid', '$id', '1', '$ingevulde_antwoord', CURRENT_DATE(),$_SESSION[sessionID]);";
}
我沒有收到「這已經存在」的文本,即使它重複也仍然插入。
非常感謝。
在我看來,你只設置變量'$ sql2'在else分支,但你在其他地方執行你的sql。難道你不可能在其他地方設置其他變量,因此你總是執行該查詢?編輯:我讀你的答案錯了:我讀「我得到一個'這是已經存在的'文本'。對不起 – 2015-02-11 15:43:39
偏題:關於SQL中命名約定的好文章(https://launchbylunch.com/posts/2014/Feb/16/sql-naming-conventions/)。祝你好運! – mineroot 2015-02-11 15:54:09