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

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

    <legend id='EhXDT'><style id='EhXDT'><dir id='EhXDT'><q id='EhXDT'></q></dir></style></legend>

    1. 在 PHP PDO MYSQL 中插入多行的最佳方法是什么?

      What is the best way to insert multiple rows in PHP PDO MYSQL?(在 PHP PDO MYSQL 中插入多行的最佳方法是什么?)

    2. <tfoot id='rVzlN'></tfoot>

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

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

              <tbody id='rVzlN'></tbody>
              <bdo id='rVzlN'></bdo><ul id='rVzlN'></ul>

                <legend id='rVzlN'><style id='rVzlN'><dir id='rVzlN'><q id='rVzlN'></q></dir></style></legend>

                本文介紹了在 PHP PDO MYSQL 中插入多行的最佳方法是什么?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                問題描述

                比如說,我們要在一個表中插入多行:

                Say, we have multiple rows to be inserted in a table:

                $rows = [(1,2,3), (4,5,6), (7,8,9) ... ] //[ array of values ];
                

                使用 PDO:

                $sql = "insert into `table_name` (col1, col2, col3) values (?, ?, ?)" ;
                

                現在,您應該如何繼續插入行?像這樣嗎?

                Now, how should you proceed in inserting the rows? Like this?

                $stmt = $db->prepare($sql);
                
                foreach($rows as $row){
                  $stmt->execute($row);
                }
                

                或者,像這樣?

                $sql = "insert into `table_name` (col1, col2, col3) values ";
                $sql .= //not sure the best way to concatenate all the values, use implode?
                $db->prepare($sql)->execute();
                

                哪種方式會更快更安全?插入多行的最佳方法是什么?

                Which way would be faster and safer? What is the best way to insert multiple rows?

                推薦答案

                您至少有以下兩個選擇:

                You have at least these two options:

                $rows = [(1,2,3), (4,5,6), (7,8,9) ... ];
                
                $sql = "insert into `table_name` (col1, col2, col3) values (?,?,?)";
                
                $stmt = $db->prepare($sql);
                
                foreach($rows as $row)
                {
                    $stmt->execute($row);
                }
                
                OR:
                
                $rows = [(1,2,3), (4,5,6), (7,8,9) ... ];
                
                $sql = "insert into `table_name` (col1, col2, col3) values ";
                
                $paramArray = array();
                
                $sqlArray = array();
                
                foreach($rows as $row)
                {
                    $sqlArray[] = '(' . implode(',', array_fill(0, count($row), '?')) . ')';
                
                    foreach($row as $element)
                    {
                        $paramArray[] = $element;
                    }
                }
                
                // $sqlArray will look like: ["(?,?,?)", "(?,?,?)", ... ]
                
                // Your $paramArray will basically be a flattened version of $rows.
                
                $sql .= implode(',', $sqlArray);
                
                $stmt = $db->prepare($sql);
                
                $stmt->execute($paramArray);
                

                正如你所看到的,第一個版本有很多簡單的代碼;但是第二個版本確實執行批量插入.批量插入應該更快,但我同意 @BillKarwin 在絕大多數實現中不會注意到性能差異.

                As you can see the first version features a lot simpler code; however the second version does execute a batch insert. The batch insert should be faster, but I agree with @BillKarwin that the performance difference will not be noticed in the vast majority of implementations.

                這篇關于在 PHP PDO MYSQL 中插入多行的最佳方法是什么?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

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

                相關文檔推薦

                MySQLi prepared statement amp; foreach loop(MySQLi準備好的語句amp;foreach 循環)
                Is mysqli_insert_id() gets record from whole server or from same user?(mysqli_insert_id() 是從整個服務器還是從同一用戶獲取記錄?)
                PHP MySQLi doesn#39;t recognize login info(PHP MySQLi 無法識別登錄信息)
                mysqli_select_db() expects exactly 2 parameters(mysqli_select_db() 需要 2 個參數)
                Php mysql pdo query: fill up variable with query result(Php mysql pdo 查詢:用查詢結果填充變量)
                MySQLI 28000/1045 Access denied for user #39;root#39;@#39;localhost#39;(MySQLI 28000/1045 用戶“root@“localhost的訪問被拒絕)
                  <legend id='x7uyY'><style id='x7uyY'><dir id='x7uyY'><q id='x7uyY'></q></dir></style></legend>
                  • <i id='x7uyY'><tr id='x7uyY'><dt id='x7uyY'><q id='x7uyY'><span id='x7uyY'><b id='x7uyY'><form id='x7uyY'><ins id='x7uyY'></ins><ul id='x7uyY'></ul><sub id='x7uyY'></sub></form><legend id='x7uyY'></legend><bdo id='x7uyY'><pre id='x7uyY'><center id='x7uyY'></center></pre></bdo></b><th id='x7uyY'></th></span></q></dt></tr></i><div class="h8sgz8b" id='x7uyY'><tfoot id='x7uyY'></tfoot><dl id='x7uyY'><fieldset id='x7uyY'></fieldset></dl></div>
                    <tfoot id='x7uyY'></tfoot>
                      <tbody id='x7uyY'></tbody>
                  • <small id='x7uyY'></small><noframes id='x7uyY'>

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

                        • 主站蜘蛛池模板: 温控器生产厂家-提供温度开关/热保护器定制与批发-惠州市华恺威电子科技有限公司 | 北京四合院出租,北京四合院出售,北京平房买卖 - 顺益兴四合院 | 纯水设备_苏州皙全超纯水设备水处理设备生产厂家 | 泉州陶瓷pc砖_园林景观砖厂家_石英砖地铺石价格 _福建暴风石英砖 | 棉服定制/厂家/公司_棉袄订做/价格/费用-北京圣达信棉服 | 12cr1mov无缝钢管切割-15crmog无缝钢管切割-40cr无缝钢管切割-42crmo无缝钢管切割-Q345B无缝钢管切割-45#无缝钢管切割 - 聊城宽达钢管有限公司 | 北京中创汇安科贸有限公司| 纯水设备_苏州皙全超纯水设备水处理设备生产厂家 | 新密高铝耐火砖,轻质保温砖价格,浇注料厂家直销-郑州荣盛窑炉耐火材料有限公司 | 成都顶呱呱信息技术有限公司-贷款_个人贷款_银行贷款在线申请 - 成都贷款公司 | 汝成内控-行政事业单位内部控制管理服务商 | 北京律师事务所_房屋拆迁律师_24小时免费法律咨询_云合专业律师网 | 应急灯_消防应急灯_应急照明灯_应急灯厂家-大成智慧官网 | 一体化污水处理设备_生活污水处理设备_全自动加药装置厂家-明基环保 | PCB厂|线路板厂|深圳线路板厂|软硬结合板厂|电路板生产厂家|线路板|深圳电路板厂家|铝基板厂家|深联电路-专业生产PCB研发制造 | 汽车水泵_汽车水泵厂家-瑞安市骏迪汽车配件有限公司 | 常州企业采购平台_常州MRO采购公司_常州米孚机电设备有限公司 | 单锥双螺旋混合机_双螺旋锥形混合机-无锡新洋设备科技有限公司 | 北京浩云律师事务所-企业法律顾问_破产清算等公司法律服务 | Magnescale探规,Magnescale磁栅尺,Magnescale传感器,Magnescale测厚仪,Mitutoyo光栅尺,笔式位移传感器-苏州连达精密量仪有限公司 | 昆明网络公司|云南网络公司|昆明网站建设公司|昆明网页设计|云南网站制作|新媒体运营公司|APP开发|小程序研发|尽在昆明奥远科技有限公司 | 贝朗斯动力商城(BRCPOWER.COM) - 买叉车蓄电池上贝朗斯商城,价格更超值,品质有保障! | 微型实验室真空泵-无油干式真空泵-微型涡旋耐腐蚀压缩机-思科涡旋科技(杭州)有限公司 | 「安徽双凯」自动售货机-无人售货机-成人用品-自动饮料食品零食售货机 | 西安微信朋友圈广告投放_微信朋友圈推广_西安度娘网络科技有限公司 | 钢板仓,大型钢板仓,钢板库,大型钢板库,粉煤灰钢板仓,螺旋钢板仓,螺旋卷板仓,骨料钢板仓 | 板框压滤机-隔膜压滤机配件生产厂家-陕西华星佳洋装备制造有限公司 | 工业机械三维动画制作 环保设备原理三维演示动画 自动化装配产线三维动画制作公司-南京燃动数字 聚合氯化铝_喷雾聚氯化铝_聚合氯化铝铁厂家_郑州亿升化工有限公司 | 上海APP开发-APP制作-APP定制开发-上海APP开发制作公司-咏熠科技 | 知企服务-企业综合服务(ZiKeys.com)-品优低价、种类齐全、过程管理透明、速度快捷高效、放心服务,知企专家! | 外贸网站建设-外贸网站设计制作开发公司-外贸独立站建设【企术】 | HYDAC过滤器,HYDAC滤芯,现货ATOS油泵,ATOS比例阀-东莞市广联自动化科技有限公司 | 低温柔性试验仪-土工布淤堵-沥青车辙试验仪-莱博特(天津)试验机有限公司 | 杜康白酒加盟_杜康酒代理_杜康酒招商加盟官网_杜康酒厂加盟总代理—杜康酒神全国运营中心 | 内窥镜-工业内窥镜厂家【上海修远仪器仪表有限公司】 | 德州万泰装饰 - 万泰装饰装修设计软装家居馆 | 医养体检包_公卫随访箱_慢病随访包_家签随访包_随访一体机-济南易享医疗科技有限公司 | 铝镁锰板_铝镁锰合金板_铝镁锰板厂家_铝镁锰金属屋面板_安徽建科 | ERP企业管理系统永久免费版_在线ERP系统_OA办公_云版软件官网 | 诚暄电子公司首页-线路板打样,pcb线路板打样加工制作厂家 | CXB船用变压器-JCZ系列制动器-HH101船用铜质开关-上海永上船舶电器厂 |