瞭解 MySQL 中的 base64 編碼?
要對 base64 進行編碼,你可以使用兩種功能 -
- TO_BASE64()
- FROM_BASE64()
base64 編碼的語法如下 -
SELECT TO_BASE64(anyValue) as AnyVariableName;
base64 解碼的語法如下 -
SELECT FROM_BASE64(encodeValue) as anyVariableName
為了理解上述概念,讓我們使用上面的語法 -
案例 1 - 編碼
為了對值進行編碼,使用 to_base64()。查詢如下 -
mysql> select TO_BASE64('Password') as Base64EncodeValue;
輸出
+-------------------+ | Base64EncodeValue | +-------------------+ | UGFzc3dvcmQ= | +-------------------+ 1 row in set (0.00 sec)
案例 2 - 解碼
為了對值進行解碼,使用 from_base64()。查詢如下 -
mysql> select FROM_BASE64('UGFzc3dvcmQ=') as Base64DecodeValue;
輸出
+-------------------+ | Base64DecodeValue | +-------------------+ | Password | +-------------------+ 1 row in set (0.00 sec)
你可以透過建立一個表來理解這一點。建立表的查詢如下 -
mysql> create table Base64Demo -> ( -> ProductId varchar(100) -> ); Query OK, 0 rows affected (0.54 sec)
使用插入命令在表中插入一些記錄。查詢如下 -
mysql> insert into Base64Demo values('321Product'); Query OK, 1 row affected (0.16 sec) mysql> insert into Base64Demo values('Product456'); Query OK, 1 row affected (0.14 sec) mysql> insert into Base64Demo values('654Product'); Query OK, 1 row affected (0.15 sec)
使用 select 語句從表中顯示所有記錄。查詢如下 -
mysql> select *from Base64Demo;
輸出
+------------+ | ProductId | +------------+ | 321Product | | Product456 | | 654Product | +------------+ 3 rows in set (0.00 sec)
以下是 base64 編碼的查詢。查詢如下 -
mysql> select TO_BASE64(ProductId) as Base64Encode from Base64Demo;
輸出
+------------------+ | Base64Encode | +------------------+ | MzIxUHJvZHVjdA== | | UHJvZHVjdDQ1Ng== | | NjU0UHJvZHVjdA== | +------------------+ 3 rows in set (0.00 sec)
現在讓我們交叉檢查一下,解碼列中的第一個值後是否得到了原始值。查詢如下 -
mysql> select FROM_BASE64('MzIxUHJvZHVjdA==') as DecodeValue;
輸出
+-------------+ | DecodeValue | +-------------+ | 321Product | +-------------+ 1 row in set (0.00 sec)
是的,我們得到了初始值。
廣告