日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

pdo连接mysql数据库(简洁明了)

發(fā)布時間:2023/12/4 数据库 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pdo连接mysql数据库(简洁明了) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一 實例化pdo對象

$dsn = "mysql:dbname=test;host=127.0.0.1"; $pdo = new PDO($dsn,'root','root');

?

二 數(shù)據(jù)查詢

1、如果不根據(jù)用戶傳過來的值進行操作,可以直接query sql

$dsn = "mysql:dbname=test;host=127.0.0.1"; $pdo = new PDO($dsn,'root','root'); $sql = "select * from student"; $stmt = $pdo->query($sql); var_dump($stmt->fetchAll(2));

數(shù)據(jù)是可以正常顯示的

array (size=39)0 => array (size=8)'id' => '1' (length=1)'name' => '周更生' (length=9)'sex' => '男' (length=3)'age' => '24' (length=2)'edu' => '大專' (length=6)'salary' => '5000.00' (length=7)'bonus' => '200.00' (length=6)'city' => '山東省' (length=9)1 => array (size=8)'id' => '2' (length=1)'name' => '王小平' (length=9)'sex' => '男' (length=3)'age' => '28' (length=2)'edu' => '大專' (length=6)'salary' => '500.00' (length=6)'bonus' => '200.00' (length=6)'city' => '陜西省' (length=9)2 => array (size=8)'id' => '3' (length=1)'name' => '周改娟' (length=9)'sex' => '女' (length=3)'age' => '28' (length=2)'edu' => '大專' (length=6)'salary' => '8000.00' (length=7)... (size=39)0 => array (size=8)'id' => '1' (length=1)'name' => '周更生' (length=9)'sex' => '男' (length=3)'age' => '24' (length=2)'edu' => '大專' (length=6)'salary' => '5000.00' (length=7)'bonus' => '200.00' (length=6)'city' => '山東省' (length=9)1 => array (size=8)'id' => '2' (length=1)'name' => '王小平' (length=9)'sex' => '男' (length=3)'age' => '28' (length=2)'edu' => '大專' (length=6)'salary' => '500.00' (length=6)'bonus' => '200.00' (length=6)'city' => '陜西省' (length=9)2 => array (size=8)'id' => '3' (length=1)'name' => '周改娟' (length=9)'sex' => '女' (length=3)'age' => '28' (length=2)'edu' => '大專' (length=6)'salary' => '8000.00' (length=7)...

?

2、sql中帶變量進行查詢

$id = 5; $pdo = new \PDO('mysql:host=127.0.0.1;dbname=test','root','123456'); //查詢操作 $stmt = $pdo->query("select * from user where id ='{$id}' limit 1"); $data = $stmt->fetch(2); var_dump($data);

?

3、 如果是根據(jù)用戶傳過來的值進行查詢,為了防止sql注入,就需要預(yù)處理之后再進行查詢

$dsn = "mysql:dbname=test;host=127.0.0.1"; $pdo = new PDO($dsn,'root','root'); $name = '孫娟';//這里的$name是接收用戶傳過來的值,這里我們?yōu)榱撕啙?直接定位 $sql = "select * from student where name=:name"; $stmt = $pdo->prepare($sql); $stmt->execute(array('name'=>$name)); var_dump($stmt->fetch(2));

結(jié)果同樣可以正常信息顯示:

array (size=8)'id' => '6' (length=1)'name' => '孫娟' (length=6)'sex' => '女' (length=3)'age' => '24' (length=2)'edu' => '大本' (length=6)'salary' => '12300.00' (length=8)'bonus' => '1080.00' (length=7)'city' => '北京市' (length=9) (size=8)'id' => '6' (length=1)'name' => '孫娟' (length=6)'sex' => '女' (length=3)'age' => '24' (length=2)'edu' => '大本' (length=6)'salary' => '12300.00' (length=8)'bonus' => '1080.00' (length=7)'city' => '北京市' (length=9)

?

?

三 我們需要知道的連接mysql數(shù)據(jù)庫的三種方式及區(qū)別

?

1、pdo

pdo操作mysql數(shù)據(jù)庫雖然效率相較于mysqli會稍微低了一點點,但勝在擴展性強,以后換數(shù)據(jù)庫可以很方便的進行遷移,代碼幾乎不用改動,所以極其推薦使用pdo連接操作數(shù)據(jù)庫

?

2、mysqli

mysqli同樣可以實現(xiàn)連接并操作mysql數(shù)據(jù)庫,同樣和pdo一樣,也支持預(yù)處理,并且單純從效率上來說,好像還比pdo稍微好了那么一點,但缺點是它只能連接mysql數(shù)據(jù)庫,擴展性太差,一旦以后更換數(shù)據(jù)庫,很多代碼都需要重寫

?

3、mysql

mysql直接連接數(shù)據(jù)庫,現(xiàn)在官方都把mysql函數(shù)廢棄了,你還在執(zhí)著嗎? 第一它只支持mysql數(shù)據(jù)庫,可擴展性太差.第二,不支持預(yù)處理,安全問題堪憂,所以,千萬不要使用mysql連接數(shù)據(jù)庫方式,改用pdo或者mysqli吧

?

想了解更多可參考?https://www.helloweba.net/php/573.html

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的pdo连接mysql数据库(简洁明了)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。