ID EN
Encryption and Compression Functions

STATEMENT_DIGEST(statement)

MySQL 8.4 🇮🇩 Bahasa Indonesia

Mengingat pernyataan SQL sebagai string, mengembalikan nilai hash intisari pernyataan sebagai string dalam rangkaian karakter koneksi, atau NULL jika argumennya NULL. Fungsi STATEMENT_DIGEST_TEXT() terkait mengembalikan intisari pernyataan yang dinormalisasi. Untuk informasi tentang pencernaan pernyataan, lihat Bagian 29.10, “Intisari dan Pengambilan Sampel Pernyataan Skema Kinerja”.

Syntax

MYSQL
SET @stmt = 'SELECT * FROM mytable WHERE cola = 10 AND colb = 20';
SELECT STATEMENT_DIGEST(@stmt);
+------------------------------------------------------------------+
| STATEMENT_DIGEST(@stmt)                                          |
+------------------------------------------------------------------+
| 3bb95eeade896657c4526e74ff2a2862039d0a0fe8a9e7155b5fe492cbd78387 |
+------------------------------------------------------------------+
SELECT STATEMENT_DIGEST_TEXT(@stmt);
+----------------------------------------------------------+
| STATEMENT_DIGEST_TEXT(@stmt)                             |
+----------------------------------------------------------+
| SELECT * FROM `mytable` WHERE `cola` = ? AND `colb` = ?  |
+----------------------------------------------------------+

Contoh

Example

Both functions use the MySQL parser to parse the statement. If parsing fails, an error occurs. The error message includes the parse error only if the statement is provided as a literal string.

MYSQL
SET @stmt = 'SELECT * FROM mytable WHERE cola = 10 AND colb = 20';
SELECT STATEMENT_DIGEST(@stmt);
+------------------------------------------------------------------+
| STATEMENT_DIGEST(@stmt)                                          |
+------------------------------------------------------------------+
| 3bb95eeade896657c4526e74ff2a2862039d0a0fe8a9e7155b5fe492cbd78387 |
+------------------------------------------------------------------+
SELECT STATEMENT_DIGEST_TEXT(@stmt);
+----------------------------------------------------------+
| STATEMENT_DIGEST_TEXT(@stmt)                             |
+----------------------------------------------------------+
| SELECT * FROM `mytable` WHERE `cola` = ? AND `colb` = ?  |
+----------------------------------------------------------+