微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP PDO简单的插入或更新功能

在尝试创建一个简单的 PHP PDO更新函数时,如果找不到该字段会插入它,我创建了这个小片段.
function updateorcreate($table,$name,$value){
    global $sodb;
    $pro = $sodb->prepare("UPDATE `$table` SET value = :value WHERE field = :name");
    if(!$pro){
        $pro = $sodb->prepare("INSERT INTO `$table` (field,value) VALUES (:name,:value)");
    }
    $pro->execute(array(':name'=>$name,':value'=>$value));
}

它没有检测到更新功能是否适用于if(!$pro);我们如何使这个工作.

您将$pro分配给prepare,而不是execute语句.

话虽如此,如果你使用的是MysqL,你可以使用insert … on duplicate key update Syntax.

insert into $table (field,value) values (:name,:value) on duplicate key update value=:value2

您不能两次使用相同的绑定参数,但可以将两个绑定参数设置为相同的值.

编辑:此MysqL语法仅适用于存在密钥(主要或另一个唯一)并导致插入失败的情况.

原文地址:https://www.jb51.cc/php/133230.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐