使用sql进行更新或插入

时间:2014-03-19 19:14:14

标签: php sql

我有一个幻想高尔夫网站。我使用php来读取xml文件并使用以下

更新sql数据库
foreach($field->field->children() as $player){

    $lastname = ($player['last_name']);
    $firstname = ($player['first_name']);

    $firstname = mysql_real_escape_string($firstname); 
    $lastname = mysql_real_escape_string($lastname);  
    $sSQL = "UPDATE `Sheet1` Set InField= 1 WHERE LastName = '$lastname' AND Firstname = '$firstname'";
    $result = mysql_query($sSQL, $conn) or die(mysql_error());

这将使用xml文件中的播放器更新数据库INFIELD列。我的问题是,如果他不在数据库中,我将如何将该播放器添加到数据库中?所以几乎就像在做数据库一样,如果不在数据库中 - 插入新记录?

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

确保(LastName, FirstName)上有唯一的密钥,然后使用:

INSERT INTO Sheet1 (LastName, FirstName, InField)
VALUES ('$lastname', '$firstname', 1)
ON DUPLICATE KEY UPDATE InField = 1

Documentation

答案 1 :(得分:0)

我建议你调整它。

player =mysql_query(select player_in_table from players_table where player_in_table = playerx)

if(mysql_num_row(player) = 1){
 //update
} else {
 //update
}