Heim > Backend-Entwicklung > PHP-Tutorial > mysql - php中数据库pdo的exec方法返回影响行数的问题

mysql - php中数据库pdo的exec方法返回影响行数的问题

WBOY
Freigeben: 2016-06-06 20:44:33
Original
1096 Leute haben es durchsucht

<code>    try{
    $dbh = new PDO('mysql:dbname=testdb;host=localhost', 'mysql_user', 'mysql_pwd');
}catch(PDOException $e){
    echo '数据库连接失败:'.$e->getMessage();
    exit;   
}

$query = "UPDATE contactinfo SET phone='139223045534'  where name='黄某某'";
$affected = $pdo->exec($query);
echo $affected;
</code>
Nach dem Login kopieren
Nach dem Login kopieren

数据库连接是成功了,$query里的语句在sql里执行也是没问题哒。。也就是说排除数据库连接和字段对应问题。
那为啥$affected还是返回影响行数是0呢。。
检查了一个小时了~没头绪
各位有遇见过这种情况嘛

回复内容:

<code>    try{
    $dbh = new PDO('mysql:dbname=testdb;host=localhost', 'mysql_user', 'mysql_pwd');
}catch(PDOException $e){
    echo '数据库连接失败:'.$e->getMessage();
    exit;   
}

$query = "UPDATE contactinfo SET phone='139223045534'  where name='黄某某'";
$affected = $pdo->exec($query);
echo $affected;
</code>
Nach dem Login kopieren
Nach dem Login kopieren

数据库连接是成功了,$query里的语句在sql里执行也是没问题哒。。也就是说排除数据库连接和字段对应问题。
那为啥$affected还是返回影响行数是0呢。。
检查了一个小时了~没头绪
各位有遇见过这种情况嘛

有可能的一种原因:
你的表 contactinfo 中的 name='黄某某' 的数据本来就是 phone='139223045534',
所以你 UPDATE 语句执行成功了,但是影响的行数是 0。

判断执行失败需要用 === FALSE。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage