pdo方式连接数据库 查询数据并调用fetch方法时出错

WBOY
Freigeben: 2016-06-06 20:15:44
Original
1273 Leute haben es durchsucht

1.在学习php时用PDO模式连接数据库,查询数据时,在调用fetch方法时出现错误:Fatal error: Call to a member function fetch() on a non-object
2.代码

<code>//PDO连接数据库方式
     try{
         $db_conn = new PDO('mysql:host = localhost;dbname = test','root','123456');
         echo "连接成功!";
     }
     catch(PDOException $e){
         echo "Could not connect to datebase";
     }

//从表中选取数据
     $stmt = $db_conn->query('SELECT * FROM user');
     var_dump($stmt);
//显示结果
     while ($row = $stmt->fetch()) {
         echo $row['name'].$row['number'].$row['class'];
     }
</code>
Nach dem Login kopieren
Nach dem Login kopieren

3.错误结果
pdo方式连接数据库 查询数据并调用fetch方法时出错

4.数据库
pdo方式连接数据库 查询数据并调用fetch方法时出错

回复内容:

1.在学习php时用PDO模式连接数据库,查询数据时,在调用fetch方法时出现错误:Fatal error: Call to a member function fetch() on a non-object
2.代码

<code>//PDO连接数据库方式
     try{
         $db_conn = new PDO('mysql:host = localhost;dbname = test','root','123456');
         echo "连接成功!";
     }
     catch(PDOException $e){
         echo "Could not connect to datebase";
     }

//从表中选取数据
     $stmt = $db_conn->query('SELECT * FROM user');
     var_dump($stmt);
//显示结果
     while ($row = $stmt->fetch()) {
         echo $row['name'].$row['number'].$row['class'];
     }
</code>
Nach dem Login kopieren
Nach dem Login kopieren

3.错误结果
pdo方式连接数据库 查询数据并调用fetch方法时出错

4.数据库
pdo方式连接数据库 查询数据并调用fetch方法时出错

你的sql查询出错了,$stmt都是false了,还怎么执行fetch呀

<code>foreach ($db_conn->query('SELECT * FROM user') as $row) {
        print $row['name'] . "\t";
        print $row['age'] . "\t";
    }</code>
Nach dem Login kopieren

参考手册。问题一般都可以解决。:)

query执行SQL后可以直接用fetchAll获取结果集,这样就不需要while循环逐条fetch了:

<code><?php $db = new PDO();
$sql = 'SELECT * FROM user';
var_export( $db->query($sql)->fetchAll(PDO::FETCH_ASSOC) );</code>
Nach dem Login kopieren

可以在phpmyadmin中把你要查询的sql语句运行一下,
SELECT * FROM user,可能它就是错的。
我一直是这样查错的,希望能帮到你。

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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!