Heim >Backend-Entwicklung >PHP-Tutorial >PDO-Datenzugriffs-Abstraktionsschicht in PHP

PDO-Datenzugriffs-Abstraktionsschicht in PHP

墨辰丷
墨辰丷Original
2018-05-18 10:14:141393Durchsuche

Der folgende Editor zeigt Ihnen ein Beispiel für den funktionalen Betrieb der PDO-Datenzugriffs-Abstraktionsschicht in PHP. Lassen Sie mich es jetzt mit Ihnen teilen und es allen als Referenz geben.

PDO: Data Access Abstraction Layer

weist drei Hauptmerkmale auf:

1. Kann auf andere Datenbanken zugreifen

2. Mit vorbereiteter Anweisungsfunktion (Verhinderung von SQL-Injection-Angriffen)

>Der Beispiel-Operationscode lautet wie folgt:

<?php

//1.造PDO对象
$dsn ="mysql:dbname=mydb;host=localhost";//数据库类型:dbname=数据库名称;host=链接的ip或本机
$pdo =new PDO($dsn,"root","root");//$dsn,帐号,密码

//2.写SQL语句
$sql ="select * from info"; 
$sql ="insert into info values(&#39;004&#39;,&#39;王六&#39;,&#39;男&#39;,&#39;n007&#39;,&#39;1994-02-11&#39;)";

//3.执行SQL语句
$stm = $pdo->query($sql); //查询语句用query,返回的是结果
$arr = $pdo->exec($sql);//增删改用exec,返回的是执行的行数

//4.从PDOStatement对象里面读数据
$arr =$stm->fetch(PDO::FETCH_NUM);//默认不选为PDO::FETCH_BOTH fetch为选择一条数据
$arr = $stm->fetchAll(PDO::FETCH_BOTH);//fetchAll为全选

//事务类型:即要不全部都通过,要不全部失败,可以参考淘宝购物,必须同时满足扣款,减去库存和添加订单三项条件,缺一不可
//beginTransation 启动事务
//commit 提交事务
//rollback 回滚:返回到启动事务之前


//1.造PDO对象
$dsn ="mysql:dbname=mydb;host=localhost";
$pdo =new PDO($dsn,"root","root");

//2.将PDO的错误类型设置为异常模式
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);

try //尝试运行,包含从开启事务到提交事务
{
  //开启事务
  $pdo->beginTransaction();
  $sql1 = "insert into info values(&#39;004&#39;,&#39;进口&#39;,&#39;男&#39;,&#39;n008&#39;,&#39;1994-05-11&#39;)";
  $sql2 = "insert into info values(&#39;005&#39;,&#39;审核&#39;,&#39;男&#39;,&#39;n009&#39;,&#39;1994-07-11&#39;)";
  $sql3 = "insert into info values(&#39;006&#39;,&#39;姐我&#39;,&#39;男&#39;,&#39;n0010&#39;,&#39;1994-08-11&#39;)";
  
  $pdo->exec($sql1);
  $pdo->exec($sql2);
  $pdo->exec($sql3);
  
  //提交事务
  $pdo->commit();
}
  catch(Exception $e)
  {
    //回滚操作
    $pdo->rollBack();
    
  }
  //强类型语言中使用
  final
  {
    //最终执行,无论有没有异常出现,该代码都会执行
  }
?>

Verwandte Empfehlungen:

Informationen zur PDO-Datenzugriffsabstraktionsschicht in PHP-Einführung in funktionale Operationen

Operationen im Zusammenhang mit der PDO-Datenzugriffs-Abstraktionsschicht in PHP

Detaillierte Erläuterung von Beispielen der PDO-Datenzugriffs-Abstraktionsschicht in PHP

Das obige ist der detaillierte Inhalt vonPDO-Datenzugriffs-Abstraktionsschicht in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn