1.query() 方法:
query () 方法用于返回执行查询后的结果集。
语法:PDOStatement PDO::query(string statement)
说明:参数statement 是要执行的sql 语句,他返回的是一个PDOStatementm 对象
<?php
$dbms='mysql';
$dbname='fastadmin';
$user='root';
$pwd='root';
$host='localhost';
$dsn="$dbms:host=$host;dbname=$dbname";
try{
$pdo=new PDO($dsn, $user, $pwd);
//echo 'pdo 连接数据库成功';
$sql='select * from fa_user';
$res=$pdo->query($sql);
foreach ($res as $v){
echo $v['username']."\t".$v['password']."\t".$v['email']."<br>";
}
}catch (Exception $e){
echo $e->getMessage();
}
2.exec () 方法
exec() 方法返回执行后受影响的行数
语法:int PDO::exec(string statement)
说明:参数statement 是要执行的sql语句。该方法返回执行查询时受影响的行数,通常用于 insert 、delete \update 中
3.预处理语句--prepare() 和 execute()
预处理语句包括prepare 和 execute() 两个方法。首先通过 prepare()方法做查询的准备工作;然后,通过 execute() 方法执行查询。并且还可以通过 bindParam()方法来绑定参数提供给execute() 方法。语法:
PDOStatement PDO::prepare(string statement,array driver_options)
bool PDOStatement::execute(array input_parameters)
<?php
$dbms='mysql';
$dbname='fastadmin';
$user='root';
$pwd='root';
$host='localhost';
$dsn="$dbms:host=$host;dbname=$dbname";
try{
$pdo=new PDO($dsn, $user, $pwd);
//echo 'pdo 连接数据库成功';
$sql='select * from fa_user';
$res=$pdo->query($sql);
foreach ($res as $v){
echo $v['username']."\t".$v['password']."\t".$v['email']."<br>";
}
echo "================================================="."<br>";
$statement="select * from fa_baiduhangyu";
$sql=$pdo->prepare($statement);
$sql->execute();
while ($res=$sql->fetch(PDO::FETCH_ASSOC)){
echo $res['word']."-----".$res['wuxing']."----".mb_substr($res['main'],0, 30)."<br>";
}
}catch (Exception $e){
echo $e->getMessage();
}
3.PDO中获取结果集
在 PDO 中获取结果集有三个方法 fetch()、fetchAll()、和fetchColumn().
fetch() 方法
fetch() 方法获取结果集中的下一行
语法:mixed PDOStatement::fetch(int fetch_style,int cursor_orientaion,int cursor_offset)
fetch 的可选参数
PDO::FETCH_ASSOC 关联数组形式
PDO::FETCH_NUM 数字索引数组
PDO::FETCH_BOTH 两者形式都有,默认选项
PDO::FETCH_OBJ 按照对象形式,类似 mysql_fetch_object()
PDO::FETCH_BOUND 以 boolean 值得形式返回结果,同时将获取的列值赋给bindParam()方法中指定的变量
PDO::FETCH_LAZY 以关联数组、数字索引和对象3中形式返回结果