Прежде всего, я новичок в кодировании. Я пытаюсь «вставить, если не существует другого обновления» моей базы данных. Я использую код ниже:INSERT ... ON DUPLICATE KEY UPDATE не работает
$query = "
INSERT INTO offers (user_i , startPoli_i , finalPoli_i ,depDay_i , onoma_pro , epitheto_pro , prosfora , comments_pro ,string_uniq)
VALUES (:u1 , :sP1, :fP1 ,:dD1, :op, :ep , :p , :cp , :su)
ON DUPLICATE KEY UPDATE
string_uniq = :su
";
$query_params = array(
':u1' => $_POST['user_i'],
':sP1' => $_POST['startPoli_i'],
':fP1' => $_POST['finalPoli_i'],
':dD1' => $_POST['depDay_i'],
':op' => $_POST['onoma_pro'],
':ep' => $_POST['epitheto_pro'],
':p' => $_POST['prosfora'],
':cp' => $_POST['comments_pro'],
':su' => $_POST['string_unique']
);
Я объявляю столбец «string_uniq» уникальным. В моей таблице используется MyISAM
. Проблема: когда значение ":su"
идентично существующему значению column 'string_uniq'
, а для example ":p"
значение отличается, обновление не происходит. Любое предложение; Заранее спасибо