Можно ли «переопределить» (ОБНОВИТЬ) таблицу, добавить несколько новых столбцов? - PullRequest
0 голосов
/ 31 мая 2011

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

В настоящее время я $sql = "CREATE TABLE ' . $table_name . ' ' . TABLE_COLUMNS; и odbc выполняет его, где TABLE_COLUMNS - это DEFINE () (константа литеральной строки).

Это больше вопрос SQL, чем кодирование. Я не хочу менять какой-либо код, кроме DEFINE; Я просто хочу (если возможно) один оператор SQL, который создает таблицу, если она не существует, или обновляет ее, если она существует, вставляя столбцы по мере необходимости, либо с пустым, либо с нулевым значением или некоторыми значащими в уже существующих строках (которые должны остаться ).

Можно ли это сделать, или мне нужно написать какой-нибудь код, который бы знал, какие столбцы были раньше, а какие новые? (а как насчет удаления столбцов?)

1 Ответ

1 голос
/ 31 мая 2011

Вы не попадете туда с одним определением.Вы должны попытаться создать таблицу.Если это не удается, попробуйте создать каждый из столбцов.Не то чтобы добавление столбцов один за другим может занимать много времени в больших таблицах, поскольку MySQL фактически воссоздает всю таблицу и копирует все данные.

Лучше получить текущую структуру таблицы, проанализировать ееи добавьте необходимые столбцы.

Пожалуйста, отметьте похожий вопрос .

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