ใช้ INFORMATION_SCHEMA.COLUMNS เช็คว่า database ว่างหรือไม่ ไวยากรณ์:
SELECT COUNT(DISTINCT `TABLE_NAME`) AS anyAliasName FROM `INFORMATION_SCHEMA`.`COLUMNS` WHERE `table_schema` = 'yourDatabaseName';
คืนค่า 0 ถ้าไม่มีตาราง ไม่งั้นคืนจำนวนตาราง ทดสอบกับ database 'sample' (มีตาราง) และ 'test3' (ว่าง)
กรณี 1 - Database sample:
mysql> SELECT COUNT(DISTINCT `table_name`) AS TotalNumberOfTables FROM `information_schema`.`columns` WHERE `table_schema` = 'sample';
ผลลัพธ์มีตาราง 130 ตาราง (ไม่ว่าง):
+---------------------+ | TotalNumberOfTables | +---------------------+ | 130 | +---------------------+ 1 row in set (0.01 sec)
กรณี 2 - Database test3:
mysql> SELECT COUNT(DISTINCT `table_name`) AS TotalNumberOfTables FROM `information_schema`.`columns` WHERE `table_schema` = 'test3';
ผลลัพธ์คืน 0 (ว่างเปล่า):
+---------------------+ | TotalNumberOfTables | +---------------------+ | 0 | +---------------------+ 1 row in set (0.00 sec)