<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head> <body>
<?php //PDO:数据访问抽象层
//dsn:数据源
//1.带有事务功能:
$dsn="mysql:host=localhost;dbname=bilibili";
//造PDO对象
$pdo=new PDO($dsn,"root",""); //设置为异常模式
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION ); try
{
//写SQL语句
$sql="insert into nation values ('n007','白族')";
$sql1="insert into nation values ('n002','白族')";
//$sql2="insert into nation values ('n008','白族')"; //启动事务
$pdo->beginTransaction(); //执行SQL语句
$pdo->exec($sql);
$pdo->exec($sql1);
//$pdo->exec($sql2); $pdo->commit();
}
catch (PDOException $e)
{
//echo $e->getMessage();
//回滚事务
$pdo->rollBack();
} /*foreach($a as $v)
{
var_dump($v);
}
*/ ?>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head> <body>
<?php //2.防止SQL注入攻击
$dsn="mysql:host=localhost;dbname=bilibili";
$pdo=new PDO($dsn,"root",""); $sql="insert into nation values(?,?)"; //将一条SQL语句放到服务器等待执行
$stm=$pdo->prepare($sql); /*//绑定参数
$stm->bindParam(1,$code);
$stm->bindParam(2,$name); //给变量赋值
$code="n030";
$name="蒙古";*/ $attr=array("n031","壮族"); //执行预处理语句,执行成功返回true,执行失败返回false
if($stm->execute($attr))
{
//var_dump($stm->fetch());
//var_dump($stm->fetchAll(PDO::FETCH_ASSOC));
} ?>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head> <body>
<?php //2.防止SQL注入攻击
$dsn="mysql:host=localhost;dbname=bilibili";
$pdo=new PDO($dsn,"root",""); $sql="insert into nation values(:code,:name)"; //将一条SQL语句放到服务器等待执行
$stm=$pdo->prepare($sql); /*//绑定参数
$stm->bindParam(1,$code);
$stm->bindParam(2,$name); //给变量赋值
$code="n030";
$name="蒙古";*/ $attr=array("code"=>"n032","name"=>"土家"); //执行预处理语句,执行成功返回true,执行失败返回false
if($stm->execute($attr))
{
//var_dump($stm->fetch());
//var_dump($stm->fetchAll(PDO::FETCH_ASSOC));
} ?>
</body>
</html>

php PDO:数据访问抽象层的更多相关文章

  1. PDO数据访问抽象层

    PDO数据访问抽象层: 我们使用的mysqli是针对mysql这个数据库扩展的一个类,如果要用到别的数据库的话就可以用PDO来做 1.操作数据库 先来代码 <!--PDO--> <! ...

  2. PDO(数据访问抽象层)、pdo事务功能和预处理功能---2017-05-05

    之前所学的数据访问都是用mysqli做成类来访问的,但是mysqli这个类只是针对mysql这个数据库的:那么如果访问其他类型的数据库呢? 那么这就用到了PDO(数据访问抽象层). 一.关于PDO基本 ...

  3. PHP中关于PDO数据访问抽象层的功能操作

    PDO:数据访问抽象层 具有三大特点: 1.可以访问其它数据库  所有数据库都可以 2.具有事务功能 3.带有预处理语句功能(防止SQL注入攻击) 实例操作代码如下: <?php //1.造PD ...

  4. PDO数据访问抽象层(上)

    PDO比MySQLi功能强大 PDO可以访问MySQL及其它数据库 一.造对象 <?php $dsn = "mysql:dbname = crud;host = localhost&q ...

  5. PDO 数据访问抽象层

    1.操作其它数据库 (1)造对象 $dsn = "mysql:dbname=test3;host=localhost"; //数据源:两个参数:数据库驱动,链接数据库 $pdo = ...

  6. php 之 PDO数据访问抽象层(0513)

    PDO(PHP Data Objects)是一种在PHP里连接数据库的使用接口. PDO与mysqli曾经被建议用来取代原本PHP在用的mysql相关函数, 基于数据库使用的安全性,因为后者欠缺对于S ...

  7. 5月13 PDO数据访问抽象层

    方法1:较简单的 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...

  8. PDO数据访问抽象层(下)

    PDO两大功能 一.事务功能 PDO的事务功能主要控制好几条sql语句同时成功或者同时失败(当其中一条SQL语句有错误时,同时好几条一起失败),失败时可以回滚操作 1.造对象 <?php $ds ...

  9. PDO:数据访问抽象层

    <?php //PDO:数据访问抽象层 //带有事务功能: //dsn:数据源 $dsn="mysql:host=localhost;dbname=aaas"; //造pdo ...

随机推荐

  1. MySQL中的运算符

    一.算法运算符: (A) 除法运算和模运算中,如果除数为0,非法,返回结果为NULL. 二.比较运算符: (A) 比较结果不确定是返回NULL. (B) 比较运算符可以用于比较数字.字符串和表达式.数 ...

  2. Activity的四个启动模式

    /** * Activity有四种启动模式(android:launchMode) * 分别是: * 1. standard(默认),可以不停的在栈中创建新的Activity * 2. singleT ...

  3. spring mvc 页面编码和数据库编码 中文出现乱码

    1.前台与后台交互的时候,后台获取的中文为乱码,而且插入数据库数据也为乱码. 修改web.xml 添加编码的过滤器,全部设置为utf-8(注意加上forceEncoding) <filter&g ...

  4. Python自动化之sqlalchemy

    如果该数 据库支持 自增列 ,则 SQLAlchemy 默认 自动 设定 表中第一个 类型 为整形 的主键 为自增列 ORM介绍 orm英文全称object relational mapping,就是 ...

  5. python md5加密中文

    import md5 md5.new(u'中文').hexdigest() 会失败,报告ascii码不能解码0x.... 原因是md5会自动将被加密的数据转成字节码,如果没有详细制定编码,则可能采用了 ...

  6. 【Supervisor】使用 Supervisor source command not found 如何解决

    结论: The source command is only available in bash, and the supervisor command is run by sh. I would r ...

  7. 《oracle每天一练》Oracle冷备份与数据恢复

    相关帖子 转自http://blog.csdn.net/nsj820/article/details/5611361 备份 直接拷贝oracle目录下的admin.oradata(datafile,  ...

  8. Best Meeting Point

    Total Accepted: 701 Total Submissions: 1714 Difficulty: Medium A group of two or more people wants t ...

  9. ACM/ICPC 之 数论-斐波拉契●卢卡斯数列(HNNUOJ 11589)

    看到这个标题,貌似很高大上的样子= =,其实这个也是大家熟悉的东西,先给大家科普一下斐波拉契数列. 斐波拉契数列 又称黄金分割数列,指的是这样一个数列:0.1.1.2.3.5.8.13.21.34.… ...

  10. Java Thread.join()方法

    一.使用方式. join是Thread类的一个方法,启动线程后直接调用,例如: Thread t = new AThread(); t.start(); t.join(); 二.为什么要用join() ...