日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

MySQL如何查詢某個表是否存在

系統 2033 0

常用的方法如下:

  1. SHOW TABLES LIKE '%tb_bp_d_case%';

  2. select? TABLE_NAME ?from? INFORMATION_SCHEMA . TABLES ?where TABLE_SCHEMA ='dbname' and? TABLE_NAME ='tablename' ;

需要考慮的是權限問題

mysql 的授權分為 5 層:全局層級,數據庫層級,表層級,列層級,子程序層級;

SHOW TABLES,并不在priv_type列表中,也就是說只要能連接到mysql上都可以執行。
如果用戶權限是 表層級或者是列層級 的,那么 show tables; 只能看到有權限的表名。
如果 查詢 INFORMATION_SCHEMA 庫的話,也是一樣的,只能查詢到有權限的表。
如果說一個用戶的權限不是數據庫層級以上的話就會導致結果不可信賴。

類似下邊的授權就不用擔心這個問題(priv_type隨便什么都行):

grant priv_type on dbName .* to ..... ? --數據庫層級

-- or

grant priv_type on *.* to ..... ? ? ? ? --全局層級

==============================

如果上邊寫的沒看明白,那么繼續看下邊一個例子:

如:數據庫有 test1,test2 ,...
test1 庫中有表,abc ,ab ,abb, a 四個表

授權語句:

grant insert on test1 . a to user1@ "%" Identified by "user1"

當用 user1 連接后,選擇 test1 數據庫后執行:
show tables; -- 結果只要 a 一個表。同樣的 show tables like "a%"; --結果也只有表 a

select TABLE_NAME from INFORMATION_SCHEMA . TABLES where TABLE_SCHEMA = 'test1' ; -- 結果也是只要一個 a

MySQL如何查詢某個表是否存在


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 常熟市| 改则县| 泸水县| 阿荣旗| 自治县| 阳信县| 剑川县| 舟山市| 龙胜| 金堂县| 佛山市| 深泽县| 体育| 金门县| 达日县| 西华县| 揭西县| 林西县| 根河市| 仙游县| 西贡区| 滁州市| 涿鹿县| 廉江市| 馆陶县| 同江市| 石棉县| 武乡县| 巴中市| 随州市| 体育| 招远市| 巴南区| 桐城市| 海门市| 阿拉善右旗| 兴安县| 大安市| 墨玉县| 安新县| 上饶县|