Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

แบบสอบถาม MySQL เพื่อตรวจสอบว่าฐานข้อมูลว่างเปล่าหรือไม่?


คุณสามารถใช้ INFORMATION_SCHEMA.COLUMNS เพื่อตรวจสอบว่าฐานข้อมูลว่างเปล่าหรือไม่ ไวยากรณ์มีดังนี้ −

SELECT COUNT(DISTINCT `TABLE_NAME`) เป็น anyAliasName จาก `INFORMATION_SCHEMA`.`COLUMNS` โดยที่ `table_schema` ='yourDatabaseName';

ไวยากรณ์ด้านบนจะคืนค่า 0 หากฐานข้อมูลมีความโดดเด่น มิฉะนั้น จะคืนค่าจำนวนตาราง ตัวอย่างเช่น เราใช้ฐานข้อมูล 'sample' และ 'test3' ซึ่งเราเคยสร้างมาก่อน

'ตัวอย่าง' ฐานข้อมูลแรกมีตารางมากกว่า ดังนั้นแบบสอบถามด้านบนจะคืนค่าจำนวนตาราง ฐานข้อมูลที่สอง 'test3' ไม่มีตารางใดๆ ดังนั้น เคียวรีด้านบนจะคืนค่า 0

กรณีที่ 1 − ตัวอย่างฐานข้อมูล

แบบสอบถามมีดังนี้ −

mysql> SELECT COUNT (DISTINCT `table_name`) เป็น TotalNumberOfTables จาก `information_schema`.`columns` โดยที่ `table_schema` ='sample';

ต่อไปนี้เป็นผลลัพธ์ที่แสดงจำนวนตารางในนั้น ดังนั้นฐานข้อมูลจึงไม่ว่าง -

<ก่อนหน้า>+---------------------+| TotalNumberOfTables |+---------------------+| 130 |+---------------------+1 แถวในชุด (0.01 วินาที)

กรณีที่ 2 − การทดสอบฐานข้อมูล3

แบบสอบถามมีดังนี้ −

mysql> SELECT COUNT (DISTINCT `table_name`) เป็น TotalNumberOfTables จาก `information_schema`.`columns` โดยที่ `table_schema` ='test3';

ต่อไปนี้เป็นผลลัพธ์ที่ส่งคืน 0 ดังนั้นฐานข้อมูลจึงว่างเปล่า -

<ก่อนหน้า>+---------------------+| TotalNumberOfTables |+---------------------+| 0 |+---------------------+1 แถวในชุด (0.00 วินาที)

ดังที่กล่าวไว้ข้างต้น หากเราได้ 0 แสดงว่าไม่มีตารางในฐานข้อมูล