<?php
/**
*$pdo->query($sql);返回一个PDOStatement对象,$sql执行的是insert命令时,调用lastInsertId()方法可以获取最后插入的ID;
*$pdo->exec($sql);返回受影响的条数;
*/
/**
*PDO预处理的步骤:
*执行sql语句
*$pre=$pdo->prepare("insert into test(id,ti) values(:id,:ti)"); :id :ti可以用?代替
*用$pre->bindParam(':id',$id,PDO::PARAM_INT)绑定,然后$pre->execute();
*或者构造$arr=array(':id'=>4,':ti'=>'beautiful'); $pre->execute($arr);
*/
header('Content-Type:text/html;charset=utf-8');
$dbconfig=array(
'dbms'=>'mysql',
'host'=>'localhost',
'port'=>'3306',
'dbname'=>'test',
'user'=>'root',
'password'=>'root',
);
$dsn="{$dbconfig['dbms']}:host={$dbconfig['host']};dbname={$dbconfig['dbname']}";
//创建数据库连接
try{
$pdo=new PDO($dsn,$dbconfig['user'],$dbconfig['password']);
// echo "数据库连接成功<br/>";
echo "<pre>";
$sql="insert into test value(NULL,'new row')";
$del="delete from test where ti='new row'";
/*$data=$pdo->query($sql);
var_dump($pdo->lastInsertId());*/
/*$data=$pdo->exec($del);
var_dump($data);*/
$pre=$pdo->prepare("insert into test(id,ti) values(:id,:ti)");
/* // 设置变量
$id=3;
$ti="nice";
// 绑定变量
$pre->bindParam(":id",$id,PDO::PARAM_INT);
$pre->bindParam(":ti",$ti,PDO::PARAM_STR);
//打印执行结果
var_dump($pre->execute());*/
/*// 用数组的方式
$data=array(
':id'=>4,
':ti'=>'beautiful'
);
var_dump($pre->execute($data));*/
// 问号占位符
/* $wenhao=$pdo->prepare("insert into test(id,ti) values(?,?)");
$arr=array('5','pretty');
var_dump($wenhao->execute($arr));*/
// 预处理
$select=$pdo->prepare("select * from test order by id");
// 执行sql语句
$select->execute();
/**
*PDO::ASSOC关联数组
*PDO::OBJ对象
*PDO::NUM数组
*PDO::BOTH关联数组加数字索引数组
*/
/*
while ($arr=$select->fetch(PDO::FETCH_OBJ)) {
print_r($arr);
}*/
/**
*fetchColumn()返回第几列的数据,默认0,第一行
*/
// 显示结果的条数
// var_dump($select->rowCount());
// for ($i=0; $i <$select->rowCount() ; $i++) {
// echo $select->fetchColumn(1).'<br>';
// # code...
// }
//fetchAll 返回带有数字索引和键值对的数组;
/*print_r($select->fetchAll());
}catch(PDOException $e){
echo $e->getMessage();*/
}
PDO操作详解
最新推荐文章于 2022-07-24 22:50:52 发布