MySQL的wildcard character

也許是因為我跟MySQL太不熟,長久以來我都以為MySQL裡面的wildcard character只有 % 跟 * (for host and table name),所以我就被愚弄了 Orz

之前寫的一個的MySQL服務會自動的加上 『帳號_』 的prefix,昨天我在檢查MySQL的時候突然發現有個資料庫是 『帳號-』 的prefix,心中第一個想法就是』糟糕! 遇到高手,第一天就被人玩爛了』。後來看了一下log跟user的設定發現是先用系統建立一個 xxx_test的db,然後在程式端因為打錯字,打成了xxx-test,妙的是系統竟然也接受,即便這個user沒有create的權限!!

後來經過一番survey才發現原來』_『也是個wildcard character,所以一旦建立了xxx_test的資料庫以及其對應的權限,user就可以自由的建立 xxx*test(ex: xxx-test,xxxatest,xxxbtest)。所幸發現的早,一下就搞定這個因為我的無知而造成的bug Orz

結論,所有東西的refernece manual都應該乖乖的看阿 Orz

0 Response to “MySQL的wildcard character”


  • No Comments

Leave a Reply