zoukankan      html  css  js  c++  java
  • PDO LIMIT bug

    PDO存在一个LIMIT BUG(mysql)

    需要指定数据类型,而且limit后面跟的2个参数必须是数值类型,不然的话获取不到数据

    例1:

    $dsn = "mysql:host=127.0.0.1;port=3306;dbname=dab"; 
    $dbh = new PDO($dsn, 'root', '');
    $sql = "select * from dab_ntos_admin limit ?,?";
    $sth = $dbh->prepare($sql);
    $sth ->bindValue(1, +'0', PDO::PARAM_INT); // 第三个参数指定了参数类型,第二个参数用+号做了类型转换(转成数值类型)
    $sth ->bindValue(2, +'1', PDO::PARAM_INT); // 第三个参数指定了参数类型,第二个参数用+号做了类型转换(转成数值类型)
    $sth-> execute(); 
    foreach($sth as $row) { 
        echo var_dump($row); 
    } 

    例2:

    $dsn = "mysql:host=127.0.0.1;port=3306;dbname=dab"; 
    $dbh = new PDO($dsn, 'root', '');
    $sql = "select * from dab_ntos_admin limit :start,:limit";
    $sth = $dbh->prepare($sql);
    $sth ->bindValue(':start', +'0', PDO::PARAM_INT); // 第三个参数指定了参数类型,第二个参数用+号做了类型转换(转成数值类型)
    $sth ->bindValue(':limit', +'1', PDO::PARAM_INT); // 第三个参数指定了参数类型,第二个参数用+号做了类型转换(转成数值类型)
    $sth-> execute(); 
    foreach($sth as $row) { 
        echo var_dump($row); 
    } 
  • 相关阅读:
    Linux命令笔记
    拆功放板笔记
    从输入 URL 到页面加载完的过程中都发生了什么---优化
    python学习笔记(三)
    python学习笔记(二)
    python学习笔记(一)
    公交wifi运营平台分析
    testNG小试牛刀
    maven小项目注册服务(三)--web模块
    用maven进行测试
  • 原文地址:https://www.cnblogs.com/gabin/p/3934249.html
Copyright © 2011-2022 走看看