久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      有關(guān)PHP中PDO連接數(shù)據(jù)庫(kù)的詳細(xì)教程與實(shí)際操作演示

      PDO—數(shù)據(jù)庫(kù)抽象層

      簡(jiǎn)介:PDO擴(kuò)展為PHP訪問數(shù)據(jù)庫(kù)定義了一個(gè)輕量級(jí)的、一致性的接口,PDO解決了數(shù)據(jù)庫(kù)連接不統(tǒng)一的問題。

      一、 PDO簡(jiǎn)介

      本章主要介紹PDO的安裝與配置,以及使用PDO連接數(shù)據(jù)庫(kù)的方法。

      1-1PDO簡(jiǎn)介

      PDO是PHP Data Object(PHP數(shù)據(jù)對(duì)象)的簡(jiǎn)稱,它是與PHP5.1版本一起發(fā)布的,目前支持的數(shù)據(jù)庫(kù)包括Firebird、FreeTDS、Interbase、MySQL、MS SQL Server、ODBC、Oracle、Postgre SQL、SQLite和Sybase。當(dāng)操作不同數(shù)據(jù)庫(kù)時(shí),只需要修改PDO中的DSN(數(shù)據(jù)庫(kù)源) ,即可使用PDO的統(tǒng)一接口進(jìn)行操作。

      PDO特性:

      編碼一致性:PDO提供可用于各種數(shù)據(jù)庫(kù)的單一接口

      靈活性:PDO在運(yùn)行時(shí)必須加載數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序,所以不需要每次在使用數(shù)據(jù)庫(kù)時(shí),重新配置和重新編譯PHP

      高性能:PDO是用C語言編寫的編譯為PHP,與用php編寫的其他方案相比,雖然其他功能相同,但提供了更高的性能

      面向?qū)ο筇匦裕篜DO是利用的PHP5面向?qū)ο蟮奶匦?,可以獲得更高效的數(shù)據(jù)庫(kù)通信。

      注意:PDO擴(kuò)展只是一個(gè)抽象的接口層,利用PDO擴(kuò)展本身,并不能實(shí)現(xiàn)任何數(shù)據(jù)庫(kù)的操作,必須使用一個(gè)特性的形式把各自的特色表現(xiàn)出來才行。

      有關(guān)PHP中PDO連接數(shù)據(jù)庫(kù)的詳細(xì)教程與實(shí)際操作演示

      1-2 PDO的配置與啟用

      有關(guān)PHP中PDO連接數(shù)據(jù)庫(kù)的詳細(xì)教程與實(shí)際操作演示

      1-3 PDO連接數(shù)據(jù)庫(kù)

      有關(guān)PHP中PDO連接數(shù)據(jù)庫(kù)的詳細(xì)教程與實(shí)際操作演示

      1.通過參數(shù)形式連接數(shù)據(jù)庫(kù)(重點(diǎn)掌握此種辦法)

      //通過參數(shù)形式連接數(shù)據(jù)庫(kù) try{  $dsn='mysql:host=localhost;dbname=school';  $username='root';  $password='root';  $pdo=new PDO($dsn,$username,$password);  var_dump($pdo); }catch (PDOException $e){     echo $e->getMessage(); };  需要注意:dsn是你的數(shù)據(jù)源  輸出結(jié)果:object(PDO)#1 (0) { }

      二、 PDO對(duì)象的使用

      主要介紹PDO對(duì)象方法的使用。

      2-1 [PDO] exec()方法執(zhí)行建表操作 有關(guān)PHP中PDO連接數(shù)據(jù)庫(kù)的詳細(xì)教程與實(shí)際操作演示

      有關(guān)PHP中PDO連接數(shù)據(jù)庫(kù)的詳細(xì)教程與實(shí)際操作演示

      <?php try{     //驅(qū)動(dòng)器的名稱 mysql     $pdo=new PDO('mysql:host=localhost;dbname=school','root','root');     //exec():執(zhí)行一條sql語句并返回其受影響的行數(shù);如果沒有受影響的記錄,它返回0     //exec對(duì)于select沒有作用     //PHP是一個(gè)Web編程語言,在編程過程中難免會(huì)遇到用echo來輸出大段的html和javascript腳本的情況,     //如果用傳統(tǒng)的輸出方法 ——按字符串輸出的話,     //肯定要有大量的轉(zhuǎn)義符來對(duì)字符串中的引號(hào)等特殊字符進(jìn)行轉(zhuǎn)義,以免出現(xiàn)語法錯(cuò)誤。     //如果是一兩處還可以容忍,但是要是一個(gè)完整的 html文本或者是一個(gè)200行的js我想是誰都會(huì)崩潰的。     //這就是PHP為什么要引入一個(gè)定界符的原因——至少一大部分原因是這樣的。      /*    1.PHP定界符的作用就是按照原樣,包括換行格式什么的,輸出在其內(nèi)部的東西;     2.在PHP定界符中的任何特殊字符都不需要轉(zhuǎn)義;     3.PHP定界符中的PHP變量會(huì)被正常的用其值來替換。         PHP中的定界符格式是這樣的:     <<<Eof     ……     Eof;*/     $sql=<<<EOF     create table if not exists t_teacher(    id int UNSIGNED auto_increment primary key,    teaname varchar(20) not null UNIQUE,    pwd char(32) not null,    email varchar(30) not null ); EOF;    $res= $pdo->exec($sql);     var_dump($res); }catch (PDOException $e){     echo $e->getMessage(); };

      輸出結(jié)果:int(0);

      2-2 [PDO] exec()方法執(zhí)行插入記錄操作

      續(xù)上面:插入一條或多條記錄

      <?php try{     //驅(qū)動(dòng)器的名稱 mysql     $pdo=new PDO('mysql:host=localhost;dbname=school','root','root');     $sql='insert into t_teacher values(default,"king5","'.md5('king').'","waly@qq.com");';     $res=$pdo->exec($sql);     echo $res; }catch (PDOException $e){     echo $e->getMessage(); };
      <?php try{     //驅(qū)動(dòng)器的名稱 mysql     $pdo=new PDO('mysql:host=localhost;dbname=school','root','root');     //$sql='insert into t_teacher values(default,"king6","'.md5('king').'","waly@qq.com");';    $sql=<<<EOF       insert into t_teacher values       (default,"king7","'.md5('king').'","waly@qq.com"),       (default,"king8","'.md5('king').'","waly@qq.com"),       (default,"king9","'.md5('king').'","waly@qq.com") EOF;      $res=$pdo->exec($sql);     echo '受影響的記錄的條數(shù)為:'. $res."<br/>";     //$pdo->lastInsertId():得到新插入記錄的ID號(hào)     //echo '最后插入的ID號(hào)為:'.$pdo->lastInsertId(); }catch (PDOException $e){     echo $e->getMessage(); };

      2-3 [PDO] exec()方法執(zhí)行其他SQL操作

      有關(guān)PHP中PDO連接數(shù)據(jù)庫(kù)的詳細(xì)教程與實(shí)際操作演示

      本身是king,修改為king,會(huì)是0條記錄被影響.

      lastInsertId() 只能對(duì)插入有影響。

      exec()對(duì)查詢無作用

      2-4 [PDO] errorCode()和errorInfo()方法查看錯(cuò)誤信息

      <?php try{     //驅(qū)動(dòng)器的名稱 mysql     $pdo=new PDO('mysql:host=localhost;dbname=school','root','root');    //錯(cuò)誤的表名     $sql='insert into t_teacher1 values(default,"king6","'.md5('king').'","waly@qq.com");';     $res=$pdo->exec($sql);     if($res===false){         //$pdo->errorCode(); SQLSTATE的值         echo $pdo->errorCode();         echo '<hr/>';       //$pdo->errorInfo():返回的錯(cuò)誤信息的數(shù)組,數(shù)組中包含3個(gè)單元      //0=>SQLSTATE(錯(cuò)誤編號(hào)),1=>CODE(錯(cuò)誤碼),2=>INFO(錯(cuò)誤信息)         $errInfo=$pdo->errorInfo();         print_r($errInfo);     } }catch (PDOException $e){     echo $e->getMessage(); };

      2-5 [PDO] query()方法執(zhí)行查詢語句

      <?php try{     //驅(qū)動(dòng)器的名稱 mysql     $pdo=new PDO('mysql:host=localhost;dbname=school','root','root');     //查詢一條記錄     //$sql='select * from t_teacher where id=5';     //查詢多條記錄     $sql='select * from t_teacher';     //$pdo->query($sql):執(zhí)行sql語句,返回PDOStatement對(duì)象:需要遍歷這個(gè)對(duì)象,將里面的內(nèi)容取出來     $stmt=$pdo->query($sql);     var_dump($stmt); //只能看出這個(gè)語句返回的是一個(gè)對(duì)象     echo '<hr/>';     foreach ($stmt as $row){         print_r($row);         echo '<hr/>';         echo '編號(hào):'.$row['id'].'<br/>';         echo '用戶名:'.$row['teaname'].'<br/>';         echo '郵箱:'.$row['email'].'<br/>';         echo '<hr/>';     } }catch (PDOException $e){     echo $e->getMessage(); };
      Query()用于插入數(shù)據(jù)  <?php try{     //驅(qū)動(dòng)器的名稱 mysql     $pdo=new PDO('mysql:host=localhost;dbname=school','root','root');     //插入一條記錄     $sql='insert into t_teacher values(default,"king12","'.md5('king').'","waly@qq.com");';     //$pdo->query($sql):執(zhí)行sql語句,返回PDOStatement對(duì)象:需要遍歷這個(gè)對(duì)象,將里面的內(nèi)容取出來     $stmt=$pdo->query($sql);     var_dump($stmt); //只能看出這個(gè)語句返回的是一個(gè)對(duì)象 }catch (PDOException $e){     echo $e->getMessage(); };

      注意:

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)