pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

<tfoot id='SHU61'></tfoot>

  1. <legend id='SHU61'><style id='SHU61'><dir id='SHU61'><q id='SHU61'></q></dir></style></legend>
  2. <small id='SHU61'></small><noframes id='SHU61'>

  3. <i id='SHU61'><tr id='SHU61'><dt id='SHU61'><q id='SHU61'><span id='SHU61'><b id='SHU61'><form id='SHU61'><ins id='SHU61'></ins><ul id='SHU61'></ul><sub id='SHU61'></sub></form><legend id='SHU61'></legend><bdo id='SHU61'><pre id='SHU61'><center id='SHU61'></center></pre></bdo></b><th id='SHU61'></th></span></q></dt></tr></i><div class="5j5jpt5" id='SHU61'><tfoot id='SHU61'></tfoot><dl id='SHU61'><fieldset id='SHU61'></fieldset></dl></div>

    • <bdo id='SHU61'></bdo><ul id='SHU61'></ul>

      pdo lastInsertId 返回零(0)

      pdo lastInsertId returns zero(0)(pdo lastInsertId 返回零(0))

      • <i id='Oli2N'><tr id='Oli2N'><dt id='Oli2N'><q id='Oli2N'><span id='Oli2N'><b id='Oli2N'><form id='Oli2N'><ins id='Oli2N'></ins><ul id='Oli2N'></ul><sub id='Oli2N'></sub></form><legend id='Oli2N'></legend><bdo id='Oli2N'><pre id='Oli2N'><center id='Oli2N'></center></pre></bdo></b><th id='Oli2N'></th></span></q></dt></tr></i><div class="ztfnzv5" id='Oli2N'><tfoot id='Oli2N'></tfoot><dl id='Oli2N'><fieldset id='Oli2N'></fieldset></dl></div>

        1. <legend id='Oli2N'><style id='Oli2N'><dir id='Oli2N'><q id='Oli2N'></q></dir></style></legend>
          <tfoot id='Oli2N'></tfoot>
            • <bdo id='Oli2N'></bdo><ul id='Oli2N'></ul>

                <small id='Oli2N'></small><noframes id='Oli2N'>

                  <tbody id='Oli2N'></tbody>
              1. 本文介紹了pdo lastInsertId 返回零(0)的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                問題描述

                所有查詢都成功執行,當我檢查 MySQL 行中的表插入成功且沒有任何錯誤,但 lastInsertId() 返回 0.為什么?

                All queries execute successfully, when I check table in MySQL row inserted successfully without any error, but lastInsertId() returns 0. why?

                我的代碼:

                // queries executes successfully, but lastInsetId() returns 0
                // the menus table has `id` column with primary auto_increment index
                // why lastInsertId return 0 and doesn't return actual id?
                
                
                $insertMenuQuery = " 
                 SELECT @rght:=`rght`+2,@lft:=`rght`+1 FROM `menus` ORDER BY `rght` DESC limit 1; 
                 INSERT INTO `menus`(`parent_id`, `title`, `options`, `lang`, `lft`, `rght`) 
                      values 
                  (:parent_id, :title, :options, :lang, @lft, @rght);";
                     try {
                           // menu sql query
                           $dbSmt = $db->prepare($insertMenuQuery);
                
                           // execute sql query
                           $dbSmt->execute($arrayOfParameterOfMenu);
                           // menu id
                           $menuId = $db->lastInsertId();
                
                           // return
                           return $menuId;
                
                     } catch (Exception $e) {
                          throw new ForbiddenException('Database error.' . $e->getMessage());
                     }
                

                推薦答案

                我們必須使用 PDO_MySQL

                With PDO_MySQL we must use

                $DB->setAttribute(PDO::ATTR_EMULATE_PREPARES,TRUE); // there are other ways to set attributes. this is one
                

                以便我們可以運行多個查詢,例如:

                so that we can run multiple queries like:

                $foo = $DB->prepare("SELECT * FROM var_lst;INSERT INTO var_lst (value) VALUES ('durjdn')");
                

                但遺憾的是,這樣做可以減輕 $DB 返回正確插入 ID 的負擔.您必須單獨運行它們才能檢索插入 ID.這將返回正確的插入 ID:

                but sadly, doing so relieves the $DB from returning the correct insert id. You would have to run them separately to be able to retrieve the insert id. This returns the correct insert id:

                $DB->setAttribute(PDO::ATTR_EMULATE_PREPARES,TRUE);
                $foo = $DB->prepare("INSERT INTO var_lst (value) VALUES ('durjdn')");
                $foo->execute();
                echo $DB->lastInsertId();
                

                但這不會:

                $DB->setAttribute(PDO::ATTR_EMULATE_PREPARES,TRUE);
                $foo = $DB->prepare("SELECT * FROM var_lst;INSERT INTO var_lst (value) VALUES ('durjdn')");
                $foo->execute();
                echo $DB->lastInsertId();
                

                這甚至不會運行兩個查詢:

                and this won't even run the two queries:

                $DB->setAttribute(PDO::ATTR_EMULATE_PREPARES,FALSE); // When false, prepare() returns an error
                $foo = $DB->prepare("SELECT * FROM var_lst;INSERT INTO var_lst (value) VALUES ('durjdn')");
                $foo->execute();
                echo $DB->lastInsertId();
                

                這篇關于pdo lastInsertId 返回零(0)的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                相關文檔推薦

                Deadlock exception code for PHP, MySQL PDOException?(PHP、MySQL PDOException 的死鎖異常代碼?)
                PHP PDO MySQL scrollable cursor doesn#39;t work(PHP PDO MySQL 可滾動游標不起作用)
                PHP PDO ODBC connection(PHP PDO ODBC 連接)
                Using PDO::FETCH_CLASS with Magic Methods(使用 PDO::FETCH_CLASS 和魔術方法)
                php pdo get only one value from mysql; value that equals to variable(php pdo 只從 mysql 獲取一個值;等于變量的值)
                MSSQL PDO could not find driver(MSSQL PDO 找不到驅動程序)
                  <bdo id='6LElw'></bdo><ul id='6LElw'></ul>

                    <tbody id='6LElw'></tbody>
                    <legend id='6LElw'><style id='6LElw'><dir id='6LElw'><q id='6LElw'></q></dir></style></legend>

                    <i id='6LElw'><tr id='6LElw'><dt id='6LElw'><q id='6LElw'><span id='6LElw'><b id='6LElw'><form id='6LElw'><ins id='6LElw'></ins><ul id='6LElw'></ul><sub id='6LElw'></sub></form><legend id='6LElw'></legend><bdo id='6LElw'><pre id='6LElw'><center id='6LElw'></center></pre></bdo></b><th id='6LElw'></th></span></q></dt></tr></i><div class="dfp7ffl" id='6LElw'><tfoot id='6LElw'></tfoot><dl id='6LElw'><fieldset id='6LElw'></fieldset></dl></div>
                    • <small id='6LElw'></small><noframes id='6LElw'>

                      1. <tfoot id='6LElw'></tfoot>

                          主站蜘蛛池模板: 次氯酸钠厂家,涉水级次氯酸钠,三氯化铁生产厂家-淄博吉灿化工 | 广西教师资格网-广西教师资格证考试网 | Honsberg流量计-Greisinger真空表-气压计-上海欧臻机电设备有限公司 | 上海地磅秤|电子地上衡|防爆地磅_上海地磅秤厂家–越衡称重 | 成都竞价托管_抖音代运营_网站建设_成都SEM外包-成都智网创联网络科技有限公司 | 河南空气能热水器-洛阳空气能采暖-洛阳太阳能热水工程-洛阳润达高科空气能商行 | 蔬菜清洗机_环速洗菜机_异物去除清洗机_蔬菜清洗机_商用洗菜机 - 环速科技有限公司 | 匀胶机旋涂仪-声扫显微镜-工业水浸超声-安赛斯(北京)科技有限公司 | 粉末冶金-粉末冶金齿轮-粉末冶金零件厂家-东莞市正朗精密金属零件有限公司 | 智慧钢琴-电钢琴-便携钢琴-数码钢琴-深圳市特伦斯乐器有限公司 | 磁力加热搅拌器-多工位|大功率|数显恒温磁力搅拌器-司乐仪器官网 | 垃圾处理设备_餐厨垃圾处理设备_厨余垃圾处理设备_果蔬垃圾处理设备-深圳市三盛环保科技有限公司 | 集装箱标准养护室-集装箱移动式养护室-广州璟业试验仪器有限公司 | 北京网站建设公司_北京网站制作公司_北京网站设计公司-北京爱品特网站建站公司 | 搅拌磨|搅拌球磨机|循环磨|循环球磨机-无锡市少宏粉体科技有限公司 | 植筋胶-粘钢胶-碳纤维布-碳纤维板-环氧砂浆-加固材料生产厂家-上海巧力建筑科技有限公司 | 护腰带生产厂家_磁石_医用_热压护腰_登山护膝_背姿矫正带_保健护具_医疗护具-衡水港盛 | 乙炔气体报警装置|固定式氯化氢检测仪|河南驰诚电气百科 | 圣才学习网-考研考证学习平台,提供万种考研考证电子书、题库、视频课程等考试资料 | 北京森语科技有限公司-模型制作专家-展览展示-沙盘模型设计制作-多媒体模型软硬件开发-三维地理信息交互沙盘 | 球盟会·(中国)官方网站 | 面粉仓_储酒罐_不锈钢储酒罐厂家-泰安鑫佳机械制造有限公司 | 广州活动策划公司-15+年专业大型公关活动策划执行管理经验-睿阳广告 | 超声波焊接机_超音波熔接机_超声波塑焊机十大品牌_塑料超声波焊接设备厂家 | IIS7站长之家-站长工具-爱网站请使用IIS7站长综合查询工具,中国站长【WWW.IIS7.COM】 | 丹佛斯压力传感器,WISE温度传感器,WISE压力开关,丹佛斯温度开关-上海力笙工业设备有限公司 | 【星耀裂变】_企微SCRM_任务宝_视频号分销裂变_企业微信裂变增长_私域流量_裂变营销 | 小型高低温循环试验箱-可程式高低温湿热交变试验箱-东莞市拓德环境测试设备有限公司 | 电子元器件呆滞料_元器件临期库存清仓尾料_尾料优选现货采购处理交易商城 | 培训中心-翰香原香酥板栗饼加盟店总部-正宗板栗酥饼技术 | 番茄畅听邀请码怎么输入 - Dianw8.com | 卫生人才网-中国专业的医疗卫生医学人才网招聘网站! | 煤棒机_增碳剂颗粒机_活性炭颗粒机_木炭粉成型机-巩义市老城振华机械厂 | 红立方品牌应急包/急救包加盟,小成本好项目代理_应急/消防/户外用品加盟_应急好项目加盟_新奇特项目招商 - 中红方宁(北京) 供应链有限公司 | 防火板_饰面耐火板价格、厂家_品牌认准格林雅| 蒜肠网-动漫,二次元,COSPLAY,漫展以及收藏型模型,手办,玩具的新媒体.(原变形金刚变迷TF圈) | 淄博不锈钢,淄博不锈钢管,淄博不锈钢板-山东振远合金科技有限公司 | 阿里巴巴诚信通温州、台州、宁波、嘉兴授权渠道商-浙江联欣科技提供阿里会员办理 | 拼装地板,悬浮地板厂家,悬浮式拼装运动地板-石家庄博超地板科技有限公司 | [官网]叛逆孩子管教_戒网瘾学校_全封闭问题青少年素质教育_新起点青少年特训学校 | 火锅底料批发-串串香技术培训[川禾川调官网] |