zoukankan      html  css  js  c++  java
  • PDO

    PDO 数据访问抽象层
    dsn 数据源
    特点 1.带有事务功能
    $dsn="mysql:host=localhost;dbname=zxpm";
    //造pdo对象
    $pdo=new PDO($dsn,"root","");
    //设置为异常模式
    $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION );

    try
    {
    //启动事务
    $pdo->beginTransaction();
    //写sql语句
    $sql="insert into nation values('n005','藏族')";
    //执行sql语句
    $a=$pdo->exec($sql);
    $pdo->commit();
    }
    catch(PDOException $e)
    {
    //echo $e->getMessage();
    //回滚事务
    $pdo->rollBack();
    }

    启动事务和回滚事务之间的语句如果有错误就回滚,相当于不执行

    2.可以防止sql注入攻击
    $dsn="mysql:host=localhost;dbname=zxpm";
    $pdo=new PDO($dsn,"root","");
    $sql="insert into nation values(?,?)";//?代表站位符
    //将一条sql语句放到服务器等待执行
    $stm=$pdo->prepare($sql);
    //绑定参数,给站位符
    /*$stm->bindParam(1,$code);
    $stm->bindParam(2,$name);
    //给变量赋值
    $code="n006";
    $name="傣族";*/
    $attr=array("n007","土家");//简单方法
    //执行预处理语句,执行成功,返回true,失败返回false
    if($stm->execute($attr))
    {
    //var_dump($stm->fetch());
    //var_dump($stm->fetchAll(PDO::FETCH_ASSOC));
    }

    另外一种方法

    $dsn="mysql:host=localhost;dbname=zxpm";
    $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="n006";
    $name="傣族";*/
    $attr=array("code"=>"n008","name"=>"兽族");//关联数组
    //执行预处理语句,执行成功,返回true,失败返回false
    if($stm->execute($attr))
    {
    //var_dump($stm->fetch());
    //var_dump($stm->fetchAll(PDO::FETCH_ASSOC));
    }

  • 相关阅读:
    javascript学习笔记-数据类型
    chrome console.log API
    Mysql下SELECT的结果集作为UPDATE的WHERE条件时的SQL语法
    Ajax、Comet、Websocket、SSE
    Model View Controller(MVC) in PHP
    区别Transform、Transition、Animation
    WAI-ARIA无障碍网页应用属性完全展示
    理解 PHP output buffer
    清除Jquery动画的队列
    git常用命令
  • 原文地址:https://www.cnblogs.com/hamilton/p/5604682.html
Copyright © 2011-2022 走看看