PDO (php data object)

需要到php.ini中开启扩展extension=php_pdo_mysql.dll
Pdo连接数据库:
• $DSN="mysql:host=服务器地址/名称;port=端口号;dbname=数据库名";
• $Options=array(PDO::MYSQL_ATTR_INIT_COMMAND=>'set names 连接编码');
• $pdo=new pdo($DSN,'用户名','密码',$Options);
$result=$pdo->query("返回结果集的sql语句");成功是一个pdo结果集对象,失败:false
$result=$pdo->exec("增删改的sql语句");结果:true(表示成功)false(表示失败)
$pdo=null;//销毁该对象
其他操作
• $pdo->lastInsertId();// 获取最后添加的id的值
• $pdo->beginTransaction();// 开启一个事务
• $pdo->commit();// 提交一个事务
• $pdo->rollBack();// 回滚一个事务
• $pdo->inTransaction();// 判断当前行是否在事务中,返回true或false
• $pdo->setAttribute(属性名,属性值);// 设置pdo对象的属性值
举例:$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
Pdo结果集:
$stmt=$pdo->query('select 。。。');//结果集
$stmt->rowCount();//得到结果集的行数
$stmt->columnCount();//得到结果集的列数
$stmt->fetch([返回类型]);//从结果集中取出一行数据,取出的结果,由其中的“返回类型”来决定,常用的有:
PDO::FETCH_ASSOC:表示关联数组
PDO::FETCH_NUM:表示索引数组
PDO::FETCH_BOTH:表示前两者都有,这是默认值
PDO::FETCH_OBJ:表示对象
$stmt->fetchAll([返回类型])一次性获取结果集中的所有数据,返回的是一个二维数组,相当于我们自己写的GetRows()
$stmt->fetchColumn([$i])//获取结果集中的“下一行”数据的第$i个字段的值,结果是一个标量值,相当于我们自己写的GetOneData()
$stmt->fetchObject()
$stmt->errorCode();//pdo结果集的错误代号
$stmt->errororInfo();//pdo结果集的错误信息(是一个数组)
$stmt->closeCursor();//关闭结果集(相当于mysql_close())
Pdo预处理:
$sql="select * from tab where id=:v1 and name=:v2";//这里这个‘v1’和‘v2’就是未给定的数据项;通常叫做“命名参数”
$stmt=$pdo->prepare($sql);
//对上述预处理的结果对象($stmt)的未赋值数据,进行赋值
$stmt->bindValue(数据项1,值1);数据项指定是第几个命名参数,整数值从1开始
$stmt->bindValue(数据项2,值2);
//。。。
//执行
$stmt->execute();

猜你喜欢

转载自blog.csdn.net/benben0729/article/details/81019115