如何使用 PHP 從 MySQL 資料庫中獲取列舉可能的值?


藉助於 INFORMATION_SCHEMA.COLUMNS 表,你可以從 MySQL 資料庫中獲取可能的列舉值。語法如下 −

SELECT
   COLUMN_TYPE AS anyAliasName
FROM
   INFORMATION_SCHEMA.COLUMNS
WHERE
   TABLE_SCHEMA = ‘yourDatabaseName’ AND TABLE_NAME = 'yourTableName' AND COLUMN_NAME = 'yourEnumColumnName';

為了理解上述語法,讓我們用 ENUM 資料型別建立一個表。建立表所需的查詢如下 −

mysql> create table EnumDemo
-> (
-> Id int,
-> Color ENUM('RED','GREEN','BLUE','BLACK','ORANGE')
-> );
Query OK, 0 rows affected (0.66 sec)

此處表 “EnumDemo” 存在於 “sample” 資料庫中。現在你可以實現上述語法,以根據列獲取列舉的所有可能值。

示例

查詢如下 −

mysql> SELECT
-> COLUMN_TYPE as AllPossibleEnumValues
-> FROM
-> INFORMATION_SCHEMA.COLUMNS
-> WHERE
-> TABLE_SCHEMA = 'sample' AND TABLE_NAME = 'EnumDemo' AND COLUMN_NAME = 'Color';

輸出

+---------------------------------------------+
| AllPossibleEnumValues                       |
+---------------------------------------------+
| enum('RED','GREEN','BLUE','BLACK','ORANGE') |
+---------------------------------------------+
1 row in set (0.00 sec)

更新日期: 26-6 月-2020

2K+ 瀏覽

開啟你的職業生涯

完成課程,獲得認證

立即開始
廣告
© . All rights reserved.