pdo为什么不用用户名和密码可以操作成功

WBOY
Freigeben: 2016-06-20 12:48:25
Original
962 Leute haben es durchsucht

$dsn = "mysql:host=localhost;dbname=test";  try{    $pdo = new PDO($dsn);    echo "连接成功";    }catch(PDOException $e){    echo "连接失败".$e->getMessage();}try{	  $pdo->beginTransaction();	  $goodprice = 5;	  $id_out = 15;	  $id_in =16;	  $sql1 ="update price set goodprice = goodprice -{$goodprice} where id ={$id_out}";	  $sql2 ="update price set goodprice = goodprice +{$goodprice} where id ={$id_in}";    	 	  if(!$affectd_rows =$pdo->exec($sql1)){	  	  throw new PDOException("{$id_out}转出失败");	  }	  if(!$affectd_rows =$pdo->exec($sql2)){	  	  throw new PDOException("{$id_in}转入失败");	  }	  $pdo->commit();	   echo "提交成功";}catch(PDOException $e){	  echo $e->getMessage();         $pdo->rollback();} 
Nach dem Login kopieren


pdo为什么不用用户名和密码可以操作成功 ?我的数据库名和密码都是root,这有关系吗?


回复讨论(解决方案)

你肯定还有一个root用户的密码为空

你肯定还有一个root用户的密码为空


我的数据库名和密码都是root,而且密码不为空。

贴出mysql数据库下user表信息,就知道你的账号信息。

这个应该没有问题吧?

这个应该没有问题吧?


2个root是空密码 一个什么都不用

改密码后,报了 Access denied for user ''@'localhost' to database 'mysql'错误

改密码后,报了 Access denied for user ''@'localhost' to database 'mysql'错误


删掉多余用户 然后看看初始的root权限。。

改密码后还是这样,不用数据库用户名和密码就可以操作成功。。

删掉密码为空的用户,只保留一个root用户,密码为root的那个,看看还能不能连接上

mysql> select user,password,host from mysql.user;
+------+-------------------------------------------+-----------+
| user | password                                  | host      |
+------+-------------------------------------------+-----------+
| root | *615C20A218B2D0A3259776CEDF21E8E295121158 | 127.0.0.1 |
| root | *615C20A218B2D0A3259776CEDF21E8E295121158 | ::1       |
+------+-------------------------------------------+-----------+
2 rows in set (0.00 sec)

mysql> select *  from price;
+----+-----------+
| id | goodprice |
+----+-----------+
| 15 |       125 |
| 16 |       121 |
| 17 |        15 |
+----+-----------+

还是不行

不知道为什么,必须密码和账号了

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