将数据库添加到mysql表的条件

时间:2014-07-23 14:18:23

标签: php mysql

我是mysql的新手,我写了这个php脚本,它在mysql数据库表中创建了一个新行,它运行正常,但它添加了这一行而不管它是否存在。我需要的是我的脚本检查表中的“用户名”列,如果我们没有这样的用户名将整行添加到表中,如果我们有这样的用户名只更新“Minutes”列。在此先感谢。

<?PHP

    $user_name = "root";
    $password = "12345i";
    $server = "localhost";
    $database = "maz_database";

    $db_handle = mysql_connect($server, $user_name, $password);
    $db_found = mysql_select_db($database, $db_handle);

    if ($db_found) {

    $SQL = "INSERT INTO maz_table (Username,Password,Email_address,Address,Minutes,Tags) VALUES('maz','pass','maz@yahoo.com','london',2000,'')";

    $result = mysql_query($SQL);
    mysql_close($db_handle);
    print "Records added to the database";

    }
    else {

    print "Database NOT Found ";
    mysql_close($db_handle);

    }

?>

1 个答案:

答案 0 :(得分:1)

您需要添加ON DUPLICATE KEY UPDATE以指定记录已存在时要执行的操作。

示例:

INSERT INTO maz_table (Username,Password,Email_address,Address,Minutes,Tags) 
VALUES ('maz','pass','maz@yahoo.com','london',2000,'')
ON DUPLICATE KEY UPDATE Minutes = $minutesvariable

用户名是您的主键。