Будьте уважні, перевіряючи наявність із подібним твердженням!
Якщо в ряді нещасних подій ваша змінна в кінцевому підсумку виявляється порожньою, і ви закінчите це:
SHOW DATABASES like '' -- dangerous!
Він поверне ВСІ БД, тим самим повідомляючи викликаючий сценарій, що він існує з моменту повернення деяких рядків.
Набагато безпечніше і краща практика використовувати знак рівності "=" для перевірки на існування.
Правильним і безпечним способом перевірки на наявність має бути:
SHOW DATABASES WHERE `database` = 'xxxxx' -- safe way to test for existence
Зауважте, що вам потрібно обернути базу даних імен стовпців за допомогою зворотних посилань, вона не може використовувати розслаблений синтаксис у цьому випадку.
Таким чином, якщо код, що створює змінну 'xxxxx', повернувся порожнім, то SHOW DATABASES не поверне ВСІ БД, але поверне порожній набір.