Mysql : 如何使用 if /elseif

Mysql : how to use if /elseif

检查 table 如果某个值可用则更新它,如果不可用则插入它。 例如 : 如果今天的日期可用,只需更新员工姓名,但如果有今天的行,则将其插入。

 HI First use SELECT query to find record which you want to update or insert exists in your table use mysql_num_rows() to find it,

 Then use if else statement 

    if($numrows != '')
     {
      echo "your update query here";
      }
     else {
       echo "your insert query here";
        }

如果 date 列上有唯一键,则

INSERT INTO employees (...) VALUES (...) ON DUPLICATE KEY UPDATE name = ...;

它将尝试插入该行,但如果这样的日期已经存在,它将命中重复键,在这种情况下,它只会更新具有重复键的行的名称。

(我要强调一下:为了使它起作用,你需要在 date 列上有一个唯一的键)

有关详细信息,请参阅 http://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html

此外,REPLACE 是另一种可能适用于您的情况的解决方案:http://dev.mysql.com/doc/refman/5.0/en/replace.html

有了 REPLACE 你就 运行

REPLACE INTO employees (...) VALUES (...);

就好像你在 运行宁 INSERT。它的工作方式是尝试 INSERT 该行,如果由于重复键而不能,它会替换与您提供的值冲突的整个行。