Heim  >  Artikel  >  Backend-Entwicklung  >  Unterwegs zu Pferd - PDO-Verbindungsfehler

Unterwegs zu Pferd - PDO-Verbindungsfehler

autoload
autoloadOriginal
2021-03-05 11:52:492966Durchsuche

Gute Dinge kommen schwer, aber es gibt einige Probleme bei der Verbindung zur Datenbank, die manchmal wirklich nervig sein können.

1. Bestätigen Sie, dass PDO aktiviert ist

PDO muss in PHP 5.1 oder höher in einer Windows-Umgebung aktiviert sein. PDO的开启必须在Windows环境下php 5.1以上版本中。

    在自己的环境内新建 test.php文件,内容如下:

<?php
 print phpinfo();
?>

    运行后能看见下图,便说明已经开启成功,直接转至2。

Unterwegs zu Pferd - PDO-Verbindungsfehler

    若无法运行则打开php.ini配置文件,找到extension=php_pdo.dll(配置php配置文件,开启相应扩展) 和extension=php_pdo_mysql.dll (开启对相应数据库的扩展,以MySQL为例),去掉前面“;”的注释,修改后的两行配置内容如下:

extension=php_pdo.dll
extension=php_pdo_mysql.dll

     完成后重启apache后即可。

  2.数据库连接问题

  1. 连接到 MySQL

<?php
   $dbh = new PDO(&#39;mysql:host=localhost;dbname=my_database&#39;, $user, $pass);
?>

          注意:如果有任何连接错误,将抛出一个 PDOException 异常对象。

      b.处理连接错误

<?phptry {
    $dbh = new PDO(&#39;mysql:host=localhost;dbname=my_database&#39;, $user, $pass);
    foreach($dbh->query(&#39;SELECT * from student&#39;) as $row) {
        print_r($row);
    }
    $dbh = null;} catch (PDOException $e) {
    print "Error!: " . $e->getMessage() . "<br/>";
    die();}
?>

   3.SQL语句本身有错误

<?php
//实例化PDO对象
$pdo = new PDO(&#39;mysql:host=localhost;port=3306;dbname=my_database&#39;,&#39;root&#39;,&#39;root&#39;);

//写操作
$sql = "delete from student";		//错误SQL
$rows = $pdo->exec($sql);

//错误判定:exec方法执行结果成功也存在返回0的情况,错误会返回false,所以要判定是否是SQL错误,需要判定结果为false
if(false === $rows){
    //取出错误细信息
    echo &#39;SQL错误:<br/>&#39;;
    echo &#39;错误代码为:&#39; . $pdo->errorCode() . &#39;<br/>&#39;;   
    echo &#39;错误原因为:&#39; . $pdo->errorInfo()[2];		
    //errorInfo返回数组,2下标代表错误具体信息          
    exit;		                                    
    //错误不需要继续执行代码
}
?>

    语句问题可以通过连接数据库,通过cmd命令行或者数据库可视化软件(例如Navicat、phpMyAdmin

Erstellen Sie in Ihrer eigenen Umgebung eine neue test.php-Datei mit folgendem Inhalt:

rrreee Nach dem Ausführen sehen Sie das Bild unten, was bedeutet, dass es erfolgreich geöffnet wurde. Unterwegs zu Pferd - PDO-Verbindungsfehler

Wenn es nicht ausgeführt werden kann, öffnen Sie die Konfigurationsdatei php.ini und suchen Sie nach extension=php_pdo.dll (konfigurieren Sie die PHP-Konfigurationsdatei und aktivieren Sie die entsprechende Erweiterung) und extension=php_pdo_mysql.dll (Aktivieren Sie die Erweiterung für die entsprechende Datenbank, nehmen Sie MySQL als Beispiel), entfernen Sie den vorherigen „;“-Kommentar, die beiden geänderten Die Zeilen des Konfigurationsinhalts lauten wie folgt: 🎜 rrreee🎜 Starten Sie apache nach Abschluss neu. 🎜🎜🎜 2. Datenbankverbindungsproblem🎜🎜
  1. 🎜Verbinden Sie sich mit MySQL🎜
rrreee🎜                                         HINWEIS: Bei Verbindungsfehlern wird ein PDOException-Ausnahmeobjekt ausgelöst.
🎜🎜 b. Umgang mit Verbindungsfehlern🎜rrreee🎜 3. Es gibt Fehler in der SQL-Anweisung selbst🎜🎜rrreee🎜 Anweisungsprobleme können durch Herstellen einer Verbindung zur Datenbank gelöst werden cmd-BefehlszeileOder Datenbankvisualisierungssoftware (z. B. Navicat, phpMyAdmin), um das Anweisungsproblem zu bestätigen. 🎜🎜Empfohlen: 🎜php-Tutorial, 🎜🎜php-Video-Tutorial🎜🎜

Das obige ist der detaillierte Inhalt vonUnterwegs zu Pferd - PDO-Verbindungsfehler. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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