4X_Pro
Руководитель Проекта
Настоящий Компьютерщик
Откуда: Москва Всего сообщений: 2994 Рейтинг пользователя: 79 Дата регистрации на форуме: 29 сен. 2001
|
Профиль | Сообщить модератору | ИгнорироватьNEW! Сообщение отправлено: 22 июня 2006 14:07
SHOW PRIVILEGES для использования из скрипта очень неудобная штука...
В итоге я сделал так:
SELECT Db FROM mysql.db WHERE DB="имя_базы"
-- это проверка на существование. Если запрос не возвращает ничего, то базы не существует, если 1 ряд — то существует. Сначала я еще и владельца пытался проверять (поле User), но потом оказалось, что на некоторых хостингах (особенно тех, где стоит CPanel) БД записываются на имя rootа, а не пользователя, от которого идет подключение, и в этом случае скрипт их не видит, поэтому пришлось отказаться.
А права на создание базы проверяю следующим запросом:
SELECT Create_priv FROM mysql.user WHERE User="имя_пользователя"
Правда, эта проверка — упрощенная (т.к. по хорошему надо бы добавить отслеживание ситуации, когда пользователь может подключаться с различных хостов).
--- Каждый человек всегда может найти, чем он может быть полезен окружающим. Проблема только в одном: слишком многие не хотят это искать.
|