如果ID存在则更新表,否则插入新记录?

时间:2013-02-28 06:40:52

标签: php

我在更新表时遇到问题 我的表包含两个Id,一个是主键,我使用第二个Id插入记录。 如果第二个id退出,我也希望更新表。 任何帮助..

5 个答案:

答案 0 :(得分:2)

使用第二个id选择。如果返回任何行运行update语句,则运行insert语句

答案 1 :(得分:1)

您可以在MySQL中使用INSERT ... ON DUPLICATE KEY UPDATE语法。 Read more

如果您正在寻找PHP解决方案首先进行SELECT查询并检查特定行是否存在。如果存在UPDATE值,则INSERT数据。

同时阅读

If Record Exists, Update Else Insert

Update record if exist, else insert in MySQL

答案 2 :(得分:0)

首先在表中执行“SELECT”子句,如果存在数据,则执行“UPDATE”,否则执行“INSERT”。

答案 3 :(得分:0)

mysql_query("select second_id from table where second_id=".$the_second_id);
if(mysql_num_rows >0) { 
mysql_query("update table set column1=value1,column2=value2,... where second_id=".$the_second_id);
}
else{
mysql_query("insert into table(column1,column2,...) values(value,value2,...) ");
}

答案 4 :(得分:0)

 $query = mysql_query('select * from my_table where second_id = '.$second_id);
 if(mysql_num_rows($query) > 0){
     mysql_query('update my_table set field = '.$value .' where second_id = '.$second_id);
 }
 else{
      mysql_query("insert into my_table (field1, field2...) values ('".$value1."', '".$value2."')");
 }