将相同的值更新到数据库时出错

迪克斯·谢蒂

这是我使用 OOP 的数据库连接,请告诉我我的执行函数有什么问题,每当我用相同的值提供更新时,它都会抛出错误。

<?php

class db{

private $conn;
private $host;
private $user;
private $password;
private $dbname;
private $port;
private $debug;
function __construct($params=array())
{
    $this->conn = false;
    $this->host = "localhost";
    $this->user = "root";
    $this->password = "mysql";
    $this->dbname = "icecreams";
    $this->port = "";
    $this->debug = true;
    $this->connect();
}

function __destruct()
{
    $this->disconnect();
    // TODO: Implement __destruct() method.
}

function connect(){
    if(!$this->conn){
        try {
            $this->conn = new PDO("mysql:host=$this->host;dbname=$this->dbname",$this->user,$this->password, array(PDO::MYSQL_ATTR_INIT_COMMAND =>'SET NAMES utf8'));
                }
                catch (Exception $e){
            die('Errer :'.$e->getMessage());
        }
        if(!$this->conn){
                    $this->status_fatal = true;
                    echo 'Connection BDD failed';
                    die();
        }
        else{
            $this->status_fatal = false;
        }
    }
    return $this->conn;
}
function disconnect(){
    if($this->conn){
        $this->conn = null;
    }
}
 function execute($query){
    if(!$response = $this->conn->exec($query)){
        echo 'PDO::errorInfo()';
        echo '</br>';
        echo 'error SQL:'.$query;
        die();
    }
    return $response;
}}

如果我用不同的值更新它会更新,如果我用相同的值更新它会显示 PDO::error 信息和错误 SQL: form execte 函数。

史蒂芬·麦克特尔

如果您的更新查询不影响任何行,则 ->exec($query) 的返回值为 0。与带有“!”的条件0相同false检查。

您可以在 if 条件中使用“=== false”:

if(($response = $this->conn->exec($query)) === false){

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我可以使用SqlBulkCopy将相同的主键更新到远程数据库吗?

PHP代码未将表单值更新到数据库

使用相同的列值更新数据库的最新行

将DateTime值更新到具有奇怪格式的数据库中显示错误的日期

如何在Laravel中使用多个ID将单个值更新到数据库中?

如何使用ID将多个单选按钮值更新到数据库

Laravel:编辑数据后更新数据库时出错

Laravel:Ajax更新到数据库

更新到数据库失败

如何更新到数据库

如何避免将相同数据插入数据库

使用多个php文件更新数据库时出错

SQLITE3:更新数据库时出错

尝试在 .NET Core 中更新数据库时出错

尝试在Android中更新sqlite数据库时出错

CRUD-更新MySQL数据库时出错

尝试在android sqlite中更新数据库时出错

使用Doctrine类型用相同的PHP值更新数据库值

每当我更新gridview时如何将今天的日期更新到数据库

单击按钮时将数据从 EditText Listview 更新到 firebase 数据库

将相同的数据库合并为一个

从PostgreSQL数据库更新MySQL数据库时出错

更新到领域0.89.1,现在尝试从数据库中清除时出现错误

为什么将信息从 Java 代码更新到 SQL 数据库时出现错误?

插入/更新到 psql 数据库时正确使用 %s

PHP和AJAX将数据更新到数据库

无法将数据更新到数据库

使用php将数据从表单更新到数据库

使用 VB.Net 将数据绑定文本框中的 string.empty 值更新到 MS Access 数据库中