更新到MySQL表,除非已存在相同的值

时间:2017-05-30 12:46:31

标签: mysql sql mysqli

我想更新数据库中的一行,但如果该值已存在,我希望它不会更新。

例如:

UPDATE religion SET
        name='3'
        WHERE id=4
        AND id NOT IN(SELECT id FROM religion);

任何指导都将不胜感激。

编辑: 我正在尝试进行数据验证。我想这样做,以便如果输入的值已经存在于表中,表格将不会更新。

3 个答案:

答案 0 :(得分:1)

  

UPDATE religion SET name =' 3' WHERE id = 4 AND name ="&#34 ;;

答案 1 :(得分:0)

我认为你是在插入语句之后而不是更新语句。因为如果行不存在,则无法更新行。所以我认为你可以这样做:

$(document).ready(() => {
  var footer = `
    <footer class="subFooter col-lg-12 col-md-12">
      <div class="col-lg-12 col-md-12" style="padding-top:35px;">
        <p style="display:inline;color:#fff">@ 2023 by Camion Ligistics Limited</p>
        <img src="images/Artboard 21 copy.png" id="twitterIcon" class="pull-right">
        <img src="images/Artboard 21.png" id="fbIcon" class="pull-right">
      </div>
    </footer>`;

  $('#footer').append(footer);
});

答案 2 :(得分:0)

这应该有效:UPDATE religion SET name='3' WHERE id=4 AND name!='3'; 这是一个简单的解释:如果id等于4且名称不等于3,则更新。这很有效。