PHP無法執行MySQL語句,解決PHP執行批量MySQL語句的問題

這篇文章主要為大家詳細介紹了解決PHP執行批量MySQL語句的問題,具有一定的參考價值,可以用來參考一下。

感興趣的小伙伴,下面一起跟隨512筆記的小玲來看看吧!

當有多條mysql語句連起來需要執行,比如

$sqls= “insert table a values(1,2); insert table a values(2,3);”

需要執行的話php中可以使用的方法有三個:

mysql_query

pdo

mysqli

三種方法當sqls語句沒有問題的時候都是可以的。

但是

當sql語句是錯誤的時候會出現問題

第一條sql錯誤:三個方法都返回false

第一條sql正確,第二條sql錯誤:mysql_query、pdo、 mysqli:query也是返回true。所以這個時候你是沒法判斷你的sqls是否有那條語句是錯誤的。

解決這種辦法有幾個招:

1 解析sql語句

將每條sql都拆分開來執行。這樣每個語句分開執行就解決了。但是這種方法多出了好幾種方法,所以不可取。

2 將sqls語句保存為文本

使用cmd執行命令 mysql…. .< sqls.sql, 然后捕獲輸出。這也是一種方法,但是感覺是繞著問題走,應該還有更好的方法。

3 使用mysqli::multi_query方法

這個方法可以執行多條sql語句,然后使用mysqli::next_result來設置sql的偏移量,使用mysqli::error獲取當前偏移的sql的錯誤狀態

下面是第三種方法的示例代碼

代碼如下:

代碼如下:

$sql = Config::get('sql');

$content = file_get_contents($sql);

$config = Config::get('config')

$mysqli = mysqli_connect($config['host'], $config['user'], $config['password'], $config['dbname']);

$ret = $mysqli->multi_query($content);

if($ret === false) {

echo mysqli_error($mysqli);

}

while (mysqli_more_results($mysqli)) {

if (mysqli_next_result($mysqli) === false) {

echo mysqli_error($mysqli);

echo "\r\n";

break;

}

}

$mysqli->close();

這樣的話當sqls語句中任意一條有錯誤的話,程序就會跳出這個錯誤。

如果你要編寫初始化mysql的腳本的話,這招就非常好用了。

注:關于解決PHP執行批量MySQL語句的問題的內容就先介紹到這里,更多相關文章的可以留意512筆記的其他信息。

關鍵詞:

您可能感興趣的文章

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/533896.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/533896.shtml
英文地址,請注明出處:http://en.pswp.cn/news/533896.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

bugku 雜項 就五層你能解開嗎_長春老舊小區加裝電梯,你家符合條件嗎?_媒體_澎湃新聞...

新朋友戳藍字關注我們哦&#xff01;長春市老舊小區開始加裝外置電梯大家都很關注很多市民也在想我家符合加裝條件嗎&#xff1f;能申請嗎&#xff1f;伴隨著長春市朝陽區3個老舊小區加裝電梯工作的結束&#xff0c;這項惠民工程也成為了老百姓茶余飯后的談資&#xff0c;那么大…

vba 指定列后插入列_Excle中的VBA介紹分享

SunYoung1、什么是VBAVisual Basic for Applications(VBA)是Visual Basic的一種 宏 語言&#xff0c;它能使常用的程序自動化&#xff0c;是針對Office開發的一種工具&#xff0c;通俗點講&#xff0c;VBA是一種Excle能聽懂識別的編程語言。2、在Excle中VBA的作用2.1、實現Exce…

php中文歌詞,html如何制作滾動歌詞

html制作滾動歌詞的方法&#xff1a;首先在標簽里面寫好編碼格式&#xff0c;引入css樣式和jQuery&#xff1b;然后放置播放器&#xff0c;代碼為【】。本教程操作環境&#xff1a;windows7系統、html5版&#xff0c;DELL G3電腦。html制作滾動歌詞的方法&#xff1a;首先我們創…

docker run 服務名_在 WSL2.0 的 Ubuntu 18 里使用 Docker

近日&#xff0c;隨著Windows 10 2004版本的發布&#xff0c;WSL 2經過了近一年的insider測試&#xff0c;現在也正式上線了。Windows 10 2004中引入了一個真實的Linux kernel&#xff0c;使得系統全部的系統調用更加兼容。這也是首次&#xff0c;Linux kernel安裝在Windows系統…

vb.net如何查詢電腦麥克風收到聲音_EMUI 10.1 跨屏協同實測:這一次把你的手機「搬」進電腦...

智能手機發展到現在&#xff0c;我們越來越需要手機與其他設備進行互聯互通。電腦是我們辦公最常用的工具&#xff0c;手機則是生活必需設備&#xff0c;這兩者的協同需求&#xff0c;自然也就成為了大多數用戶的痛點。Apple 用隔空投送、接力、隨航等連續互通功能來打造系統生…

浮動導航欄php源碼,JQuery 浮動導航欄實現代碼

JQuery 浮動導航欄/* 浮動導航欄 Begin */#floatMenu{padding-top: 5px;background: url(http://img.jb51.net/images/quickmenu.gif) no-repeat;border: 1px solid #dcdcdc;position: absolute;top: 250px;left: 5px;margin-left: 0px;width: 86px;}#floatMenu ul{margin-left…

gerber文件怎么導貼片坐標_SMT貼片工序

貼片&#xff0c;也稱SMT&#xff0c;就是把元器件用貼片機設備貼裝在印刷好的PCB板上。貼片這一過程之所以用“貼”字&#xff0c;是因為錫膏內有助焊劑的成分&#xff0c;有一定的粘性&#xff0c;能夠在沒有熔化的時候&#xff0c;也能夠黏住元器件。SMT又稱貼片&#xff0c…

es內嵌文檔查詢_ElasticSearch 文檔的增刪改查都不會?

本文主要是介紹 ElasticSearch 的文檔增刪改查和批量操作&#xff0c;同時會介紹一些 REST API 返回狀態碼的具體含義。我們先來看下這個表&#xff1a;這個表包含了 Index、Create、Read、Update、Delete 這五種方法&#xff0c;我們先來看下 CRUD 操作的 HTTP 請求都長什么樣…

如何在ps添加箭頭_「PS精選案例教程」制作斑駁生銹字體

這個教程會教您如何設計發光斑駁的字體特效&#xff0c;會教您運用PS濾鏡和紋理圖片&#xff0c;同時也詮釋了如何運用筆刷和圖層樣式給最終的字體效果增添光感。來&#xff0c;先看看最終效果&#xff01;第一步&#xff1a;創建一個1024*768的新文檔。前景色#532118&#xff…

php 獲取系統環境變量,java讀取操作系統環境變量

java讀取操作系統環境變量import java.util.*;import java.io.*;class SysProb{//返回當前系統變量的函數&#xff0c;結果放在一個Properties里邊&#xff0c;這里只針對win2k以上的&#xff0c;其它系統可以自己改進public Properties getEnv() throws Exception{Properties …

查python答案的軟件-中國大學MOOC的APP慕課用Python玩轉數據答案查題公眾號

下面屬于歐盟成員對土耳其要求加入歐盟的顧慮的一項是&#xff1a;&#xff08;)A.土耳其地理位置特殊B.土耳其經濟發 某種雙面高密軟盤片格式化后&#xff0c;若每面有A個磁道&#xff0c;每個磁道有B個扇區&#xff0c;每個扇區有C個字節。則該種軟盤 通信工程施工中電源線與…

車輛調度 matlab,基于遺傳算法的車輛調度問題的matlab源程序

越界 發表于 2013-7-8 09:16 有償服務哦function chushis)K4; %最多4輛車inn100;%迭代次數上限citynum8;%需求點數量KMcitynumK1; %配送途徑種類%產生初始種群mzeros(1,inn);mm;szeros(inn,citynumK1);for i1:1:inns(i,:)randperm(KM); %隨機排列構成個體ends[m s];for i1:inn…

strtotime()加半個小時_椰子雞這樣做太好吃了,一滴水不用加,鮮香嫩滑,做法非常簡單...

轉眼就是6月了&#xff0c;時間真的好快啊&#xff0c;好似白駒過隙&#xff0c;一眼就過去了。剛剛還是桃花開的時候&#xff0c;轉眼五月桃都熟了。不得不說&#xff0c;李煜說得很對&#xff0c;“林花謝了春紅&#xff0c;太匆匆&#xff01;”6月了&#xff0c;6月有什么呢…

webpack 入口文件 php,如何實現webpack多入口文件打包配置

本篇文章主要介紹了webpack多入口文件頁面打包配置詳解&#xff0c;現在分享給大家&#xff0c;也給大家做個參考。大多數情況下&#xff0c;我們使用 webpack來打包單頁應用程序&#xff0c;這個時候只需要配置一個入口&#xff0c;一個模板文件&#xff0c;但也不盡是如此&am…

接口里面的方法都是抽象方法嗎_大家都在講高中學習的方法有哪些,那方法和技巧有什么異同的嗎?...

大家都在講高中學習的方法有哪些&#xff0c;那方法和技巧有什么異同嗎&#xff1f;高中怎樣學習&#xff0c;方法重要還是技巧更重要&#xff1f;老牛倒是覺得&#xff0c;二者密不可分&#xff0c;缺一不可。那么&#xff0c;我們一起來看看&#xff0c;高中怎樣學習才是最好…

python 筆試題 英方_4000字轉型數據分析師筆試面試經驗分享

大家好&#xff0c;我是戴師兄~在上一篇文章中我分享了快速自學數據分析的經驗。本篇文章&#xff0c;我將跟大家分享下我的筆試和面試心得。開頭先說說我轉型前的職業背景&#xff1a;想看筆試面試經驗的同學萌可以直接跳過這一段~2018年我從中國人民大學經濟管理學專業畢業&a…

android 抓取webview中的所有圖片_如何一鍵提取PDF文檔中的所有圖片?

原標題&#xff1a;如何一鍵提取PDF文檔中的所有圖片&#xff1f;目前PDF文檔被大家廣泛應用&#xff0c;主要是因為PDF文檔在傳輸和轉換的過程中比較穩定&#xff0c;所以PDF格式幾乎是辦公文件格式的首選。大家都知道PDF文檔轉換格式以及編輯都需要專門的PDF編輯器來實現。但…

php shell 交互,通過 Tinker 實現 Laravel 命令行交互式 Shell

通過 Tinker 實現 Laravel 命令行交互式 Shell由 學院君 創建于2年前, 最后更新于 1年前版本號 #19508 views4 likes0 collectsREPL 與 PsySHLaravel 自帶了一個功能強大的 REPL —— Tinker&#xff0c;所謂 REPL&#xff0c;是 Read–Eval–Print-Loop 的縮寫&#xff0c;這是…

python中垃圾回收機制_Python中的變量和垃圾回收機制

1、python中的變量python和java中的變量本質不一樣。java中聲明變量時要指定變量的數據類型&#xff0c;int、str或某一類&#xff0c;之后虛擬機就會在內存中申請一塊空間&#xff0c;空間的大小跟類型相關。通俗的理解就是把變量想象成一個盒子&#xff0c;盒子里能裝什么東西…

戴爾電腦好還是華為好_華碩和戴爾筆記本哪種好 華碩和戴爾優缺點分析【詳解】...

隨著時代快速的發展&#xff0c;筆記本電腦已經成了我們生活中的標配。如今&#xff0c;市面上筆記本電腦的款式眾多&#xff0c;相信大家對華碩和戴爾并不陌生吧&#xff01;那么&#xff0c;我們該怎么去選擇呢&#xff1f;今天小編就給大家介紹華碩和戴爾筆記本哪個好&#…