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); 
    } 
  • 相关阅读:
    读理,妙句秒人秒事,二记
    读理,妙句秒人秒事,一记
    (原)DirectX11 深度测试(有点另类)
    游戏编程书籍推荐
    android入门-环境搭建
    Spring||Interview
    JSR-133内存模型手册
    JVM执行引擎
    HIbernate总结
    虚拟机类加载机制
  • 原文地址:https://www.cnblogs.com/gabin/p/3934249.html
Copyright © 2011-2022 走看看