PHP PDO 資料庫的串連與使用

來源:互聯網
上載者:User
<?php/* * PDO 資料庫的操作 * */$dns = "mysql:dbname=bbs;host=localhost";$user ="root";$password="";$opt = array(PDO::ATTR_PERSISTENT=>true);$pdo = new PDO($dns,$user,$password,$opt);/* * getAttribute()查看資料庫連接屬性 * */var_dump("是否關閉自動認可功能:".$pdo->getAttribute(PDO::ATTR_AUTOCOMMIT));var_dump("當家PDO錯誤處理的模式:".$pdo->getAttribute(PDO::ATTR_ERRMODE));var_dump("表欄位字元的大小寫轉換:".$pdo->getAttribute(PDO::ATTR_CASE));var_dump("與串連狀態相關的特有資訊:".$pdo->getAttribute(PDO::ATTR_CONNECTION_STATUS));var_dump("Null 字元串轉換為SQL的NULL:".$pdo->getAttribute(PDO::ATTR_ORACLE_NULLS));var_dump("應用程式提前擷取資料大小:".$pdo->getAttribute(PDO::ATTR_PERSISTENT));var_dump("與資料庫特有的伺服器資訊:".$pdo->getAttribute(PDO::ATTR_SERVER_INFO));var_dump("資料庫伺服器版本號碼資訊:".$pdo->getAttribute(PDO::ATTR_SERVER_VERSION));var_dump("資料庫用戶端版本號碼資訊:".$pdo->getAttribute(PDO::ATTR_CLIENT_VERSION));/* * 兩種執行方法 * exec 返回受影響的行數,用於 insert delete update * query 用於查詢,返回一個PDOstatement,可用於對每條資訊的操作 * *//* * $sql = "delete from news where id=16";echo $pdo ->exec($sql);--------------------------------------------------quote  為SQL語句加轉義 $sql=$pdo->quote("delete from news where id ='1'"); echo $sql;  //  輸出:'delete from news where id =\'1\''--------------------------------------------------lastInsertId$sql = "insert into news values('','boy','boy')";$pdo -> exec($sql);echo "插入的記錄的ID:".$pdo->lastInsertId();//得到最後一次插入記錄的ID--------------------------------------------------其中裡面一個最重要的方法就是 prepare($sql),返回一個PDOstatement,同樣,還有一個返回PDOstatement 的方法是 query()用於查詢資料prepare($sql) 是對SQL 陳述式進行預先處理,返回一個一個 PDOstatement對象,裡麵包含了很多有用的方法下一節再記錄PDOstatement屬性與依法--------------------------------------------------下面是用於事務的操作 * * */$sql1 = "delete from news where id =21";$sql2 = "delete from news where id =22";$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);try{$pdo->beginTransaction();$pdo->exec($sql1);$pdo->exec($sql2);}catch(Exception $ex){$pdo->rollBack();echo "資料庫操作失敗".$ex->getMessage();}?>

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.