php使用PDO抽象層獲取查詢結果,主要有三種方式:
成都創(chuàng)新互聯(lián)公司主要從事成都做網(wǎng)站、網(wǎng)站設計、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務望都,10年網(wǎng)站建設經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:13518219792
(1)PDO::query()查詢。
看下面這段php代碼:
?php //PDO::query()查詢
$res = $db-query('select * from user');
$res-setFetchMode(PDO::FETCH_NUM); //數(shù)字索引方式
while ($row = $res-fetch()){
print_r($row);
}
?
(2)PDO-exec()處理sql
?php //PDO-exec()處理sql
$db-setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$res = $db-exec("insert into user(id,name) values('','php點點通')");
echo $res;
?
(3)PDO::prepare()預處理執(zhí)行查詢
?php //PDO::prepare()預處理執(zhí)行查詢
$res = $db-prepare("select * from user");
$res-execute();
while ($row = $res-fetchAll()) {
print_r($row);
}
?
setAttribute() 方法是設置屬性,常用參數(shù)如下:
PDO::CASE_LOWER -- 強制列名是小寫
PDO::CASE_NATURAL -- 列名按照原始的方式
PDO::CASE_UPPER -- 強制列名為大寫
setFetchMode方法來設置獲取結果集的返回值的類型,常用參數(shù)如下:
PDO::FETCH_ASSOC -- 關聯(lián)數(shù)組形式
PDO::FETCH_NUM -- 數(shù)字索引數(shù)組形式
PDO::FETCH_BOTH -- 兩者數(shù)組形式都有,這是默認的
PDO::FETCH_OBJ -- 按照對象的形式,類似于以前的 mysql_fetch_object()
對上面總結如下:
查詢操作主要是PDO::query()、PDO::exec()、PDO::prepare()。
PDO-query() — 處理一條SQL語句,并返回一個“PDOStatement”
PDO-exec() — 處理一條SQL語句,并返回所影響的條目數(shù)
PDO::prepare()主要是預處理操作,需要通過$rs-execute()來執(zhí)行預處理里面的SQL語句
最后介紹兩個常用的函數(shù):
(1)fetchColumn()獲取指定記錄里一個字段結果,默認是第一個字段!
?php
$res = $db-query('select * from user');
//獲取指定記錄里第二個字段結果
$col = $res-fetchColumn(1);
echo $col;
?
(2)fetchAll(),從一個結果集中獲取數(shù)據(jù),然后存放在關聯(lián)數(shù)組中
?php
$res = $db-query('select * from user');
$res_arr =$res-fetchAll();
print_r($res_arr);
?
$con=mysql_connect('localhost','root','');//數(shù)據(jù)庫信息
mysql_select_db('shop');//數(shù)據(jù)庫名
mysql_query("set?names?utf8");//設置字符集編碼
$sql="select?goods_name,goods_number,shop_price?from?goods";//查詢語句
$res=mysql_query($sql);//執(zhí)行查詢
while($row=mysql_fetch_assoc($res)){
$rows[]=$row;//接受結果集
}
//遍歷數(shù)組
foreach($rows?as?$key=$v){
echo?$v['goods_name']."---".$v['goods_number']."---".$v['shop_price']."br/";
}
bool false 說明沒有數(shù)據(jù)被查找到……先打印出sql語句到數(shù)據(jù)庫里面執(zhí)行一下,看看是不是能查詢到數(shù)據(jù)集
........
$myresult=mysql_query("select * from 表名 where 條件",$dbconnect); //執(zhí)行查詢
while($myrow=mysql_fetch_array($myresult))
{
........
}