Добавления поля в существующую таблицу.

beba

Новичок
Добавления поля в существующую таблицу.

Нужно добавить поле в существующую таблицу, где есть данные. Если можно, дайте ссылочку на документацию. Я бы и сам не прочь почитать про ето.
А пример пусть будет такой.
Таблица temp;
вот dump:
PHP:
create temp (
  temp_id int(11) auto_increment,
  temp_name varchar(16) not null default '',
  primary key(temp_id)
);
Я бы хотел бы добавить поле temp_add int(11) not null default 1,
 

beba

Новичок
Спасибо!

-~{}~ 18.11.05 19:15:

Вопрос немного дальше по этой теме:
Я хочу, чтоб поле удалилось, если сущесвует уже.
Добавить поле.
К вопросу выше.
Делаю так:
alter table temp drop temp_add;
alter table temp add temp_add int(11) not null default 1;
По аналогии с drop table if exists temp хочу сделать и в случае с
alter table temp drop temp_add;
Не подскажете, можно ли сделать. Если можно, то как?
Я пробовал.
alter table temp drop if exists temp_add;
Синтаксическая ошибка. :(
 

Gas

может по одной?
AFAIK нельзя так сделать.
ты бы лучше рассказал что делаешь, необходимость динамически менять структуру таблиц редко возникает.
 

beba

Новичок
У меня есть своя система обновлений сайтов.
Так вот, одним из пунктов этой системы являеться sql dump;
Я стараюсь делать все аккуратно, чтоб не возникало ошибок при том же dump'е. Стараюсь предусмотреть все ситуации. На данный момент, допустим на каком-то сайте уже будет существовать это поле, обновление не пройдет до конца, а сайт будет старой версии. Это наверное может случиться в 1 из 1000 случаев, но все же....
З.ы. Да наверное и влияет фактор школы... когда меня учили sql говорили, что как правило хорошего тона делать тот же drop перед create, так и тут я думал сделать так же.
Спасибо Gas за обсуждение темы и за помощь, я думаю что ее можно закрыть.
З.Ы.2 Гастелло - и вправду герой... ! :)
 
Сверху