Проверьте, существует ли таблица базы данных с использованием PHP / PDO - PullRequest
25 голосов
/ 11 ноября 2009

Я хочу проверить, существует ли таблица с определенным именем в базе данных, к которой я подключился с помощью PHP и PDO.

Он должен работать на всех серверах базы данных, таких как MySQL, SQLite и т. Д.

Ответы [ 12 ]

0 голосов
/ 11 ноября 2009

Я делаю несколько вещей в своих веб-приложениях с CodeIgniter, чтобы проверить, что база данных существует (и полезна), любая из них может работать:

@$this->load->database();
$v = @$this->db->version()
$tables = @$this->db->list_tables();

Добавление @ будет подавлять ошибки, если вы включите их в настройках PHP, и проверка результатов version() и list_tables() может использоваться не только для определения, есть ли ваша БД (но что она нормальная). тоже).

0 голосов
/ 11 ноября 2009

Вы можете выполнить запрос «Выбрать количество (*) из таблицы» с php. Если он возвращает ошибку или исключение, таблица не существует. Это может быть последний возможный курорт, и я уверен, что это работает.

Или, вы можете проверить таблицу схемы напрямую (вероятно, требуются дополнительные разрешения для установки администратором)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...