日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

PHP優化之批量操作MySQL實例分析

瀏覽:204日期:2022-09-10 16:45:59

本文實例講述了PHP優化之批量操作MySQL。分享給大家供大家參考,具體如下:

設計一個數據表如下:

create table optimization( id INT NOT NULL AUTO_INCREMENT, value VARCHAR(10) NOT NULL, PRIMARY KEY(id));

現在有一個業務需求需要批量插入數據。

先來看看下面這一段代碼:

<?php $dsn = ’mysql:dbname=test;host=127.0.0.1’; $user = ’root’; $password = ’root’; try { $dbh = new PDO($dsn, $user, $password); } catch(PDOException $e) { echo ’Connection failed: ’ , $e->getMessage(); } $begin = microtime(true) * 1000; $count = 100; $stmt = $dbh->prepare(’INSERT INTO `optimization` (id, value) VALUES(:id, :value)’); $stmt->bindParam(’:id’, $id); $stmt->bindParam(’:value’, $value); for ($i = 0; $i < $count; $i++) { $id = ’’; $value = $i; $stmt->execute(); } $end = microtime(true) * 1000; echo ’excuted : ’ , ($end - $begin) , ’ ms’;

經過測試,上面代碼運行結果如下:

1、excuted : 7601.4348144531 ms

2、excuted : 7476.4270019531 ms

3、excuted : 7674.4387207031 ms

平均:7584.100179036433 ms

再來看看第二段代碼:

<?php $dsn = ’mysql:dbname=test;host=127.0.0.1’; $user = ’root’; $password = ’root’; try { $dbh = new PDO($dsn, $user, $password); } catch(PDOException $e) { echo ’Connection failed: ’ , $e->getMessage(); } $begin = microtime(true) * 1000; $dbh->beginTransaction(); try { $count = 100; $sql = ’INSERT INTO `optimization` (id, value) VALUES ’; $sql_arr = array(); $sql_str = ’’; for ($i = 0; $i < $count; $i++) { $sql_arr[] = ('(’’, $i)'); } $sql_str = implode(’,’, $sql_arr); $sql .= $sql_str; $stmt = $dbh->prepare($sql); $stmt->execute(); $dbh->commit(); } catch(Exception $e) { $dbh->rollBack(); echo $e->getMessage() . ’<br>’; } $end = microtime(true) * 1000; echo ’excuted : ’ , ($end - $begin) , ’ ms’;

上面這段代碼的運行結果如下:

1、excuted : 99.005859375 ms

2、excuted : 103.00610351562 ms

3、excuted : 68.00390625 ms

平均:90.00528971354 ms

##分析 可以看出,在第二段代碼中,使用了批量插入,此時的效率比第一段提高了84%。原因如下:

使用第一段代碼的時候,因為每一次循環里都執行了一個mysql語句,此時php需要與mysql獲得連接,然后再執行mysql語句,然后再斷開。這就是第一段代碼最主要的時間開銷?PHP與MySQL連接的網絡傳輸IO 第一段代碼SQL語句解析的次數更多

因此,在第二段代碼中,通過合并SQL語句來實現減少SQL語句解析的次數以及PHP與MySQL連接的次數來達到減少網絡傳輸IO的開銷。

注意: 1、SQL語句是有長度限制的,因此,在進行SQL語句合并時務必不能超過SQL長度限制,通過設置max_allowed_packet可以修改,默認是1M,測試時修改為8M。

##總結

在進行對數據庫的批量操作(如:插入、更新、修改)時,應當盡可能將SQL語句合并后再執行而不是在循環中依次執行。

記錄下最近在項目中犯下的一個比較大的錯誤,以后不能再犯了。以前一直都沒有注意到,直到現在真正參與到企業項目中,自己的代碼被老大指出錯誤后才發現自己的錯誤。學習了。

更多關于PHP相關內容感興趣的讀者可查看本站專題:《php+mysql數據庫操作入門教程》、《php+mysqli數據庫程序設計技巧總結》、《php面向對象程序設計入門教程》、《PHP數組(Array)操作技巧大全》、《php字符串(string)用法總結》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

標簽: PHP
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久99国产精品视频| 日韩av一二三| 国产精品免费精品自在线观看| 中文字幕日韩高清在线| 丝袜美腿亚洲色图| 久久国产成人| 久久亚洲风情| 蜜桃视频在线观看一区| 日韩视频精品在线观看| 国产亚洲精品久久久久婷婷瑜伽| 亚洲免费高清| 久久国产直播| 蜜臀久久99精品久久一区二区| 88xx成人免费观看视频库| 久久激情婷婷| 日韩中文欧美在线| 97精品久久| 免费在线观看一区| 人在线成免费视频| 国产一区日韩一区| 欧美在线资源| 中文在线日韩| 国产精品综合| 老色鬼精品视频在线观看播放| 国产精品毛片一区二区在线看| 久久久成人网| 午夜国产精品视频| 亚洲人成在线影院| 国产精品超碰| 另类中文字幕国产精品| 亚洲深夜影院| 久久激情av| 中文在线资源| 视频一区二区三区中文字幕| 奇米777国产一区国产二区| 成人精品国产亚洲| 亚洲激情偷拍| 国产乱子精品一区二区在线观看 | 国产婷婷精品| 免费人成精品欧美精品| 国产精品密蕾丝视频下载| 欧美男人天堂| 日韩专区欧美专区| 麻豆视频一区二区| 久久要要av| 岛国av在线播放| 红桃视频亚洲| 99久久久久国产精品| а√天堂中文在线资源8| 91精品在线免费视频| 在线视频观看日韩| 国产成人久久| 久久免费国产| 国产精品呻吟| 国产亚洲精品久久久久婷婷瑜伽| 国产亚洲毛片| 日韩欧乱色一区二区三区在线| 91成人精品观看| 精品一区二区三区的国产在线观看| 国产精品毛片一区二区在线看| 91精品一区二区三区综合在线爱| 欧美福利一区| 老鸭窝毛片一区二区三区| 亚洲精品三级| 国产精品高潮呻吟久久久久| 国产suv精品一区二区四区视频| 欧美sss在线视频| 最新亚洲激情| 亚洲精品人人| 日本伊人午夜精品| 国产精品一区亚洲| 日本久久综合| 免费久久久久久久久| 亚洲精品成人一区| 久久久精品国产**网站| 亚洲深夜视频| 久久成人精品| 久久不卡国产精品一区二区| 久久激情网站| 日韩高清一区| www在线观看黄色| 夜夜嗨一区二区三区| 日韩av不卡一区二区| 日韩在线观看| 欧美日韩免费观看一区=区三区| 中文字幕一区二区av| 麻豆精品在线观看| 欧美日韩国产探花| 国产精品久久久久久久免费软件| 中文另类视频| 欧美亚洲综合视频| 亲子伦视频一区二区三区| 亚洲精品黄色| 欧美特黄一级| 日本成人中文字幕| 激情欧美丁香| 国产精品免费大片| 激情久久久久久| 日韩精品乱码av一区二区| 国产日产精品一区二区三区四区的观看方式| 成人污污视频| 蜜桃视频在线观看一区| 黑人精品一区| 青青草91视频| 亚洲国产日韩欧美在线| 国产精品magnet| 日韩午夜电影| 国产suv精品一区| 日产欧产美韩系列久久99| 丝袜av一区| 日本午夜精品一区二区三区电影| 神马久久午夜| 日本aⅴ免费视频一区二区三区| 国产videos久久| 亚洲在线久久| 日韩毛片在线| 麻豆精品新av中文字幕| 亚洲精品一区二区在线播放∴| 视频一区二区国产| 国产一区三区在线播放| 免费在线观看不卡| 国产日韩三级| 在线精品视频一区| 欧美国产91| 亚洲精品成人图区| 国产精品日本一区二区三区在线 | 天堂网在线观看国产精品| 久久一区精品| 91免费精品国偷自产在线在线| 午夜国产精品视频| 中文字幕成在线观看| 日韩二区三区在线观看| 亚洲二区在线| 久久精品国产福利| 日本91福利区| 日韩美女精品| 国产一区二区三区91| 国产精品美女在线观看直播| 日本欧美一区二区在线观看| 蜜臀av性久久久久蜜臀aⅴ四虎| 亚洲a在线视频| 国产精品极品国产中出| 日本三级亚洲精品| 亚洲区国产区| 综合激情网...| 亚洲色诱最新| 日韩专区一卡二卡| 午夜精品久久久久久久久久蜜桃| 免费一级欧美在线观看视频 | 欧美成人aaa| 视频国产精品| 免费精品视频最新在线| 在线一区欧美| 亚洲欧美日韩综合国产aⅴ| 欧美日韩一二三四| 久久高清精品| 久久免费大视频| 久久久噜噜噜| 日本国产精品| 亚洲二区免费| 狠狠爱成人网| 免费在线观看日韩欧美| 最新国产精品| 免费在线播放第一区高清av| 久久精品国内一区二区三区水蜜桃| 夜夜嗨网站十八久久| 国产欧美激情| 亚洲香蕉网站| 日韩av网站在线免费观看| 麻豆精品久久| 欧美1区2区3区| 久久精品av麻豆的观看方式| 欧美aa在线观看| 婷婷综合成人| 91av亚洲| 偷拍亚洲精品| 日韩欧美另类一区二区| 热久久国产精品| 成人黄色av| 中文字幕一区二区三区在线视频| 国产亚洲在线| 性色av一区二区怡红| 国产亚洲久久| 成人日韩在线| 亚洲精品无吗| 亚洲黄色网址| 婷婷综合国产| 亚洲1234区| 欧美久久亚洲| 好看的亚洲午夜视频在线| 国产精品一区二区三区av| 亚洲二区视频| 久久久国产精品网站| 国产精品腿扒开做爽爽爽挤奶网站| 国产精品任我爽爆在线播放| 欧美不卡高清| 麻豆久久一区| 美国欧美日韩国产在线播放| 精品一区二区三区四区五区| 免播放器亚洲|