Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 3 651

/ вопрос решён /

Приветствую, уважаемые эксперты!
У меня вопрос насчет SQL-запроса: как выполнить создание таблицы, при этом нужно проверить, что такая таблица не существет, а если существует - вывести сообщение об этом?

P.S: там что-то такое должно вроде быть, CREATE TABLE IF NOT EXIST `...` ?

IlluminatI Вопрос решён, но можно продолжить его обсуждение в мини-форуме

Вопрос задал: IlluminatI (статус: 2-ой класс)
Вопрос отправлен: 13 января 2010, 23:04
Состояние вопроса: решён, ответов: 2.

Ответ #1. Отвечает эксперт: Dron

Здравствуйте, IlluminatI!
Вы сами почти ответили на свой вопрос. Да, именно такой конструкцией это и делается, только там "EXISTS":

CREATE TABLE IF NOT EXISTS имя_таблицы описание_полей_и_всего_остального
Несложно догадаться, что здесь идёт обычное ветвление, поэтому можно обработать случай, когда таблица уже существует:
CREATE TABLE IF NOT EXISTS table_name (...) ELSE TRUNCATE TABLE table_name
В данном примере таблица будет либо создана, либо очищена.
P.S. Это запросы на примере MySQL, но в большинстве СУБД они должны быть такими же.

Ответ отправил: Dron (статус: Студент)
Время отправки: 13 января 2010, 23:11
Оценка за ответ: 5

Комментарий к оценке: спасибо )

Ответ #2. Отвечает эксперт: Вадим К

Здравствуйте, IlluminatI!
В MySQL есть запрос SHOW TABLES; он показывает список таблиц. думаю, дальше понятно. Список таблиц показывается в виде таблицы:)

Ответ отправил: Вадим К (статус: Академик)
Время отправки: 14 января 2010, 10:28
Оценка за ответ: 5

Комментарий к оценке: спасибо, как раз возник вопрос о том, как получить список таблиц :)

Мини-форум вопроса

Всего сообщений: 0.

31 января 2011, 19:36: Статус вопроса изменён на решённый (изменил модератор Ерёмин А.А.): Автоматическая обработка (2 и более ответов с оценкой 5)

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:26
Выполнено за 0.02 сек.