zoukankan      html  css  js  c++  java
  • php PDO简介和操作

    PDO:数据访问抽象层

    具有三大特点:

    1.可以访问其它数据库  所有数据库都可以

    2.具有事务功能

    3.带有预处理语句功能(防止SQL注入攻击)

    <?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('004','王六','男','n007','1994-02-11')";
    
    //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('004','进口','男','n008','1994-05-11')";
        $sql2 = "insert into info values('005','审核','男','n009','1994-07-11')";
        $sql3 = "insert into info values('006','姐我','男','n0010','1994-08-11')";
        
        $pdo->exec($sql1);
        $pdo->exec($sql2);
        $pdo->exec($sql3);
        
        //提交事务
        $pdo->commit();
    }
        catch(Exception $e)
        {
            //回滚操作
            $pdo->rollBack();
            
        }
        
        final
        {
            //最终执行,无论有没有异常出现,该代码都会执行
        }
        
    
    
    ?>
  • 相关阅读:
    如何通过命令行窗口查看sqlite数据库文件
    eclipse自动补全的设置
    文本装饰
    注释和特殊符号
    文本装饰
    网页背景
    通过ArcGIS Server admin 查看和删除已注册的 Web Adaptor
    通过 ArcGIS Server Manager 查看已安装的 Web Adaptor
    通过 ArcGIS Server Manager 验证 DataStore
    Windows上安装ArcGIS Enterprise——以 Windows Server 2012 R2上安装 ArcGIS 10.8为例
  • 原文地址:https://www.cnblogs.com/shenzikun1314/p/6489622.html
Copyright © 2011-2022 走看看