pdo

<body>

<?php
//.访问不同的数据库(举例)
//造对象
$dsn = "mysql:dbname=test1;host=localhost";
$pdo = new PDO($dsn,"root","123");
//写sql语句
$sql = "update nation set name='兽族'where code='n002'";
//执行sql语句
$a = $pdo->exec($sql);



//带上事务功能(举例中对于加入的东西其中一个与数据库重复,则都被回滚)
//造对象
$dsn = "mysql:dbname=test1;host=localhost";
$pdo = new PDO($dsn,"root","123");
//设置异常模式
$pdo->setAttribute(pdo::ATTR_ERRMODE,pdo::ERRMODE_EXCEPTION);//(模式的名称 模式的值)
//写sql语句
$sql1 = "insert into nation values('n005','精灵族') ";
$sql2 = "insert into nation values('n006','人族') ";
try
{   //启动事物
    $pdo->beginTransaction();
	$pdo->exec($sql1);
	$pdo->exec($sql2);
	//提交事务
   $pdo->commit();
}
catch(pdoexception $e)// pdo异常的一个类型
{
	//$e->getMessage();
	//回滚
	$pdo->rollBack();
}
//另一个与catch相同的用法是final



//防止sql注入(举例)
//造对象
$dsn = "mysql:dbname=test1;host=localhost";
$pdo = new PDO($dsn,"root","123");
//写sql语句
$sqll = "insert into nation values(?,?)";
//准备sql语句,返回statement对象
$st = $pdo->prepare($sqll);
//绑定参数
	/*$st->bindparam(1,$code);
	$st->bindparam(2,$name);
	
	$code="n007";
	$name="矮人族";*/ //或者用简单方法
	                 $attr = array("n008","魔族");
	
//执行提交,不用给sql语句了,直接传过去了
//$st->execute(); 
$st->execute($attr);
//预处理语句里面用?占位的,给数组的时候要给索引数组

//防止sql注入或者用name占用位置(举例)
//造对象
$dsn = "mysql:dbname=mydb;host=localhost";
$pdo = new PDO($dsn,"root","123");

//写SQL语句,预处理语句,使用name占位
$sql = "insert into nation values(:code,:name)";

//准备执行
$st = $pdo->prepare($sql);

//绑定参数
/*$st->bindParam(":code",$code,PDO::PARAM_STR);
$st->bindParam(":name",$name,PDO::PARAM_STR);

$code="n024";
$name="狼族";*/

$attr = array("code"=>"n025","name"=>"虫族");

//执行
$st->execute($attr);

  




?> </body>

  

转载于:https://www.cnblogs.com/gaojunshan/p/6041713.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值