亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

搜索
博主信息
博文 145
粉絲 7
評論 7
訪問量 198465
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板
PHP擴展知識:PDO數(shù)據(jù)庫操作
李東亞1??3????12?
原創(chuàng)
1068人瀏覽過

PDO代碼練習

1、PDO連接

  1. <?php
  2. namespace db_PDO;
  3. use Exception;
  4. use PDO;
  5. // 準備連接數(shù)據(jù)
  6. $arguments= require 'config.php';
  7. extract($arguments);
  8. $dsn=sprintf("{$type}:host={$host};dbname={$dbname};charset={$charset};port={$port}",$type,$host,$dbname,$charset,$port);
  9. // 連接數(shù)據(jù)庫
  10. try{
  11. $db= new PDO($dsn,$username,$password);
  12. }catch(Exception $e)
  13. {
  14. echo $e->getMessage();
  15. }
  16. /*
  17. 測試連接
  18. // var_dump($db);
  19. $sql='select * FROM `students`';
  20. $smit=$db->query($sql);
  21. // $res=$smit->fetch(PDO::FETCH_ASSOC);
  22. // print_r($res);
  23. $res=$smit->fetchAll(PDO::FETCH_NUM);
  24. print_r($res);
  25. // 關閉數(shù)據(jù)庫
  26. // $db=null;
  27. unset($db);
  28. */

2、PDO插入數(shù)據(jù)

  1. <?php
  2. require 'contect.php';
  3. // 準備查詢語句;
  4. $sql="insert `students` SET `name`=?,`age`=?,sex=? ";
  5. // sql語句預處理
  6. $stmt=$db->prepare($sql);
  7. // var_dump($stmt);
  8. $data=['cqw',30,1];
  9. // 執(zhí)行預處理語句;
  10. $stmt->execute($data);
  11. // $stmt->debugDumpParams();
  12. echo ($stmt->rowCount()===1)?'新增成功,新增的id是:'.$db->lastInsertId() : '新增失敗'.$stmt->errorInfo();
  13. unset($db);

3、PDO更新操作

  1. <?php
  2. require 'contect.php';
  3. // 準備查詢語句;
  4. $sql="update `students` SET `name`=?,`age`=?,sex=? WHERE `id`=?";
  5. // sql語句預處理
  6. $stmt=$db->prepare($sql);
  7. // var_dump($stmt);
  8. $data=['xjw',31,1,3];
  9. // 執(zhí)行預處理語句;
  10. $stmt->execute($data);
  11. // $stmt->debugDumpParams();
  12. echo ($stmt->rowCount()===1) ? '更新成功': '更新失敗';
  13. unset($db);

4、PDO查詢操作

  1. <?php
  2. require 'contect.php';
  3. // 準備查詢語句;
  4. $sql='select * FROM `students`';
  5. // sql語句預處理
  6. $stmt=$db->prepare($sql);
  7. // var_dump($stmt);
  8. // 執(zhí)行預處理語句;
  9. $stmt->execute();
  10. /*
  11. 返回單條數(shù)據(jù),指針下移
  12. $res=$stmt->fetch(PDO::FETCH_ASSOC);
  13. printf('<pre>%s</pre>',print_r($res,true));
  14. $res=$stmt->fetch(PDO::FETCH_ASSOC);
  15. printf('<pre>%s</pre>',print_r($res,true));
  16. */
  17. $res=$stmt->fetchAll(PDO::FETCH_ASSOC);
  18. printf('<pre>%s</pre>',print_r($res,true));
  19. unset($db);

5、PDO刪除數(shù)據(jù)

  1. <?php
  2. require 'contect.php';
  3. // 準備查詢語句;
  4. $sql="delete FROM `students` WHERE `id`=?";
  5. // sql語句預處理
  6. $stmt=$db->prepare($sql);
  7. // var_dump($stmt);
  8. $data=[$_GET['id']];
  9. // 執(zhí)行預處理語句;
  10. $stmt->execute($data);
  11. // $stmt->debugDumpParams();
  12. echo ($stmt->rowCount()===1) ? '更新成功': '更新失敗';
  13. unset($db);

總結:

1.PDO操作數(shù)據(jù)庫連接所需參數(shù)($db=new PDO($dsn,$username,$password)):

  1. $dsn='type:host=$host;dbname=$dbname;charset=$charset;port=$port;'
  2. $username='phpedu';
  3. $password;

2.PDO 預處理(prepare()):$stmt=$db->prepare($sql);
3.PDO 執(zhí)行(execute()):$stmt->execute();
4.PDO斷開連接:$db=null或者unset($db);
5.數(shù)據(jù)庫增刪改查語句():

  1. 增加:INSERT `表名` SET `字段`='值'....`字段`='值';
  2. 刪除:DELETE FROM `表名` WHERE `字段`='值';
  3. 更新: UPDATE `表名` SET?。嘧侄危啵剑е担В嘧侄危啵剑е担?/span>WHERE `字段`='值';
  4. 查詢:SELECT * FROM `表名` where `字段`='值';*可以替換需要查詢字段

6.在sql語句中可以用(?->數(shù)組對應),(:age跟關聯(lián)數(shù)組對應)代替,進行prepare($sql)預處理,在execute($data);綁定數(shù)據(jù);
7.查詢時返回的結果集可以通過fetch()或者fetchAll()來返回(PDO::FETCH_ASSOC|FETCH_NUM|FETCH_BOTH)
8.$stmt->rowCount():受影響的行數(shù);PDO::lastInsertId():最后插入ID號;
9.$stmt->errorInfo():錯誤信息;$stmt->errorCode():錯誤代碼;

批改老師:天蓬老師天蓬老師

批改狀態(tài):合格

老師批語:對于查詢結果集的數(shù)量統(tǒng)計: rowCount()有時并不合適, 具體方案, 你到php手冊上可以查到, 考考你去找找看
本博文版權歸博主所有,轉載請注明地址!如有侵權、違法,請聯(lián)系admin@php.cn舉報處理!
全部評論 文明上網(wǎng)理性發(fā)言,請遵守新聞評論服務協(xié)議
0條評論
關于我們 免責申明 意見反饋 講師合作 廣告合作 最新更新
php中文網(wǎng):公益在線php培訓,幫助PHP學習者快速成長!
關注服務號 技術交流群
PHP中文網(wǎng)訂閱號
每天精選資源文章推送
PHP中文網(wǎng)APP
隨時隨地碎片化學習
PHP中文網(wǎng)抖音號
發(fā)現(xiàn)有趣的

Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號

  • 登錄PHP中文網(wǎng),和優(yōu)秀的人一起學習!
    全站2000+教程免費學