我們如何在 MySQL 中使用準備好的語句?

WBOY
發布: 2023-09-11 08:09:09
轉載
813 人瀏覽過

我们如何在 MySQL 中使用准备好的语句?

MySQL 伺服器支援準備好的語句,當我們想要執行許多僅在很小的細節上有所不同的查詢時,這非常有用。我們可以準備一個語句,然後多次執行它,並且每次都使用不同的資料值。基本上,MySQL 中的準備語句利用客戶端/伺服器二進位協定。準備好的語句可以提供增強的效能,因為伺服器只解析一條完整的語句。

以下是在MySQL 中使用準備好的語句的步驟-

準備語句

這是我們使用PREPARE 語句準備語句的第一步。例如,以下是使用「Tender」表中的資料編寫的報表-

範例

PREPARE stmt FROM ‘Select tender_value from Tender Where Companyname = ?;’
登入後複製

執行PREPARED 語句

 這是我們將執行的第二步驟使用「PREPARE」語句所準備的語句。例如,我們將使用以下語法執行準備好的語句 stmt -

範例

EXECUTE stmt USING @variable_name;
登入後複製

這裡 @variable_name 將具有我們希望在 ? 傳遞的值。在 PREPARE 語句中。在執行prepared語句之前,我們需要使用SET語句來設定@variable_name的值。

DEALLOCATE PREPARED語句

這是最後一步,我們將在 DEALLOCATE 語句的幫助下釋放準備好的語句。例如,我們將藉助以下語法來釋放準備好的語句 stmt -

範例

DEALLOCATE PREPARE stmt;
登入後複製

以下是我們執行準備好的語句的查詢 -

mysql> PREPARE stmt FROM 'SELECT tender_value from Tender WHERE
Companyname = ?';
Query OK, 0 rows affected (0.09 sec)
Statement prepared

mysql> SET @A = 'Singla Group.';
Query OK, 0 rows affected (0.00 sec)

mysql> EXECUTE stmt using @A;
+--------------+
| tender_value |
+--------------+
|   220.255997 |
+--------------+
1 row in set (0.07 sec)

mysql> DEALLOCATE PREPARE stmt;
Query OK, 0 rows affected (0.00 sec)
登入後複製

以上是我們如何在 MySQL 中使用準備好的語句?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板