如何通過 PHP 取得 MySQL procedure 結果
總有網友問我,如何通過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\n", mysqli_connect_error()); exit(); } $query = "call yejr();"; if ($result = $mysqli->query( $query)) { while($row = $result->fetch_row()) { printf ("find table: %s \n", $row[0]); } } $result->close(); ?>
結果大致如下:
find table: yejr2
本文轉自葉金榮51CTO部落格,原文連結:http://blog.51cto.com/imysql/308288,如需轉載請自行聯絡原作者
相關文章
- 如何通過PHP取得MySQLprocedure結果PHPMySql
- [zt] sys_refcursor實現procedure直接返回結果集不必通過packagePackage
- [譯] 通過整合學習提高機器學習結果機器學習
- MySQL in 查詢,並通過 FIELD 函式按照查詢條件順序返回結果MySql函式
- 通過shell指令碼檢視procedure的資訊指令碼
- mysql 儲存過程 procedure 批次建表MySql儲存過程
- GaussDB(for MySQL) :Partial Result Cache,通過快取中間結果對運算元進行加速MySql快取
- PHP如何通過CURL上傳檔案PHP
- 如何用PHP取得所有HTTP請求頭PHPHTTP
- mysql檢視儲存過程show procedure status;MySql儲存過程
- MySQL中如何橫向顯示結果集薦MySql
- PHP PDO獲取結果集PHP
- 簡單的mysql儲存過程,輸出結果集MySql儲存過程
- 通過Linux crontab 定期執行Oracle Procedure 指令碼LinuxOracle指令碼
- mysql儲存過程procedure、函式function的用法MySql儲存過程函式Function
- 【PHP】Php連結mysqlPHPMySql
- 通過v$access檢視正在執行的儲存過程procedure儲存過程
- php中對MYSQL操作之批量執行,與獲取批量結果PHPMySql
- MySQL中使用procedureMySql
- Servlet2.3+規範下如何透過sessionID取得取得Session呢?ServletSession
- Kettle通過Http post請求webservice介面以及結果解析處理HTTPWeb
- mysql返回一個結果集的儲存過程小例子MySql儲存過程
- MySQL order by 排序結果不正確MySql排序
- mysql group by 取想要的結果MySql
- 【MYSQL 基準測試結果】MySql
- mysql匯出查詢結果MySql
- 19、如何使用機器學習結果機器學習
- MySQL查詢結果匯出方式總結MySql
- 如何利用PHP通過mail方法傳送郵件【轉】PHPAI
- 如何通過配置高效環境實現PHP優化PHP優化
- MySQL in UnionAll結果集的優化MySql優化
- MySQL的EXPLAIN命令結果詳解MySqlAI
- ES 如何得到像mysql 中 like 一樣的搜尋結果MySql
- GBase XDM ldap_result()用來取得先前同步初始化的結果LDA
- 日付処理:文字列から日付へ変換、年月日の取得(1桁、2桁の取得結果)
- php通過陣列存取mysql查詢語句的返回值PHP陣列MySql
- MySQL入門--儲存過程(PROCEDURE)和儲存函式(FUNCTION)MySql儲存過程儲存函式Function
- MySQL 按指定 ID 順序返回結果MySql