如何通過PHP取得MySQLprocedure結果
總有網友問我,如何通過php呼叫MySQL的儲存過程同時取得返回的結果集呢?確實,MySQL的儲存過程大大方便了程式設計也提高了效率。但是,對於那些還在用php 4 的同學們來說可就麻煩了,因為php 4只能呼叫儲存過程,但卻無法直接取得返回結果集;不過,用php 5的mysqli函式就可以做到了。首先,重新編譯php 5,增加對mysqli的支援,或者直接下載mysqli的擴充套件模組,這裡不再細說。直接舉個例子吧:
1、 建立儲存過程,列出 test 庫下的所有表:
mysql>DELIMITER // mysql>CREATE PROCEDURE `yejr`() ->BEGIN ->SHOW TABLES; ->END; // Query OK, 0 rows affected (0.12 sec) mysql>DELIMITER ; mysql>CALL yejr(); +------------------+ | Tables_in_test | +------------------+ | yejr1 | | yejr2 | +------------------+
2、 用 mysqli 編寫測試程式碼:
<?php $mysqli = new mysqli("localhost", "root", "", "test"); if (mysqli_connect_errno()) { printf("Connect failed: %s ", mysqli_connect_error()); exit(); } $query = "call yejr();"; if ($result = $mysqli->query( $query)) { while($row = $result->fetch_row()) { printf ("find table: %s ", $row[0]); } } $result->close(); ?>
結果大致如下:
find table: yejr2
本文轉自葉金榮51CTO部落格,原文連結:http://blog.51cto.com/imysql/308288,如需轉載請自行聯絡原作者
相關文章
- 如何通過 PHP 取得 MySQL procedure 結果PHPMySql
- [譯] 通過整合學習提高機器學習結果機器學習
- PHP如何通過CURL上傳檔案PHP
- 如何用PHP取得所有HTTP請求頭PHPHTTP
- PHP PDO獲取結果集PHP
- Servlet2.3+規範下如何透過sessionID取得取得Session呢?ServletSession
- Kettle通過Http post請求webservice介面以及結果解析處理HTTPWeb
- [zt] sys_refcursor實現procedure直接返回結果集不必通過packagePackage
- 如何利用PHP通過mail方法傳送郵件【轉】PHPAI
- 如何通過配置高效環境實現PHP優化PHP優化
- 19、如何使用機器學習結果機器學習
- GBase XDM ldap_result()用來取得先前同步初始化的結果LDA
- 日付処理:文字列から日付へ変換、年月日の取得(1桁、2桁の取得結果)
- JS 根據彙總結果過濾JS
- 請教:如何取得js連結後的引數?JS
- 【附加題1】通過程式碼實現兩個超大的數字相加的結果?
- golang通過反射使用json字串呼叫struct的指定方法及返回json結果Golang反射JSON字串Struct
- MySQL in 查詢,並通過 FIELD 函式按照查詢條件順序返回結果MySql函式
- PHP通過FFI呼叫CJieba分詞PHPJieba分詞
- 演算法工程師如何拿結果:走過低谷,先立信念演算法工程師
- 前端如何通過連結去下載img圖片前端
- tcpdump過濾資料包,結果不對?TCP
- Oracle中過程/函式返回結果集Oracle函式
- Oracle 儲存過程返回結果集|轉|Oracle儲存過程
- Oracle 儲存過程返回結果集 (轉)Oracle儲存過程
- js取得通過網址傳遞的引數值例項程式碼JS
- 建立一個系統的Service,能通過ServiceManager.getService取得service
- 淺析如何通過PHP類的反射來實現依賴注入PHP反射依賴注入
- GaussDB(for MySQL) :Partial Result Cache,通過快取中間結果對運算元進行加速MySql快取
- PHP-FPM 與 NGINX 通訊過程PHPNginx
- GO解析PHP通過PHPCGI進行渲染GoPHP
- 如何通過C#操作Access,本人親測通過C#
- 儲存過程結果進行查詢 select 存過過程儲存過程
- MLPerf世界紀錄技術分享:通過模型壓縮優化取得最佳效能模型優化
- 如何通過Geth、Node.js和UNIX/PHP訪問以太坊節點Node.jsPHP
- PHP 如何通過 JSON-RPC 呼叫實現以太坊互動PHPJSONRPC
- 如何通過 Geth、Node.js 和 UNIX/PHP 訪問以太坊節點Node.jsPHP
- Win10系統下怎麼通過事件檢視器中檢視硬碟檢查結果Win10事件硬碟