如何在不用 MySQL 中的“select from”檢查表是否存在?
我們可以藉助 SHOW 命令來實現此目的。首先,我將藉助 USE 命令使用我的資料庫 −
mysql> USE business; Database changed
我們現在位於“business”資料庫中。接下來,我們可以檢查此資料庫中有多少個可用的表。查詢如下 −
mysql> SHOW tables;
輸出如下
+------------------------+ | Tables_in_business | +------------------------+ | addcolumntable | | autoincrement | | autoincrementtable | | bookindexes | | chardemo | | clonestudent | | columnvaluenulldemo | | dateadddemo | | deletedemo | | deleterecord | | demo | | demo1 | | demoascii | | demoauto | | demobcrypt | | demoemptyandnull | | demoint | | demoonreplace | | demoschema | | distinctdemo | | duplicatebookindexes | | duplicatefound | | employeetable | | existsrowdemo | | findandreplacedemo | | firsttable | | foreigntable | | foreigntabledemo | | groupdemo | | groupdemo1 | | incasesensdemo | | int1demo | | intdemo | | latandlangdemo | | limitoffsetdemo | | milliseconddemo | | modifycolumnnamedemo | | modifydatatype | | moneydemo | | moviecollection | | mytable | | nonasciidemo | | nthrecorddemo | | nulldemo | | nullwithselect | | pasthistory | | presenthistory | | primarytable | | primarytable1 | | primarytabledemo | | rownumberdemo | | rowstranspose | | rowstransposedemo | | secondtable | | sequencedemo | | smallintdemo | | spacecolumn | | student | | tblfirst | | tblstudent | | tbluni | | textdemo | | texturl | | trailingandleadingdemo | | transcationdemo | | unsigneddemo | | updtable | | varchardemo | | varchardemo1 | | varchardemo2 | | varcharurl | | whereconditon | +------------------------+ 72 rows in set (0.03 sec)
以下為我們可以在不使用 SELECT 語句的情況下檢查一個表是否存在的方法。
語法如下 −
SHOW tables like ‘yourTableName’;
現在,我應用上述查詢以檢查表是否存在於我的資料庫“business”中。
查詢如下 −
mysql> SHOW tables like 'tblstudent';
輸出如下
+---------------------------------+ | Tables_in_business (tblstudent) | +---------------------------------+ | tblstudent | +---------------------------------+ 1 row in set (0.00 sec)
請檢視以上輸出,我的資料庫中可見表 ‘tblstudent’。當表不存在時的案例如下 −
mysql> SHOW tables like 'sampledemo'; Empty set (0.00 sec)
廣告