![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Добавить поля не потеряв данных [D7, Paradox]
bers © (2004-09-09 16:23:00)Доброго времени суток, мастера!
Имеется 2 таблицы(мастер- детали) с данными. Надо добавить поля в обе таблицы. Или через TTable это не сделать?
Заранее благодарен.
Reindeer Moss Eater (2004-09-13 12:05:00) [1]Почему бы не заглянуть в LocalSQL Guide?
bers (2004-09-13 12:02:00) [2]Query1.SQL.Add('alter table Lgota1 add nachalo date, konets date'); -ошибка invalid use of keyword
bers (2004-09-13 11:37:00) [3]Подозреваю, что надо как то сохранить изменения между модификациями, но как?
bers (2004-09-13 11:29:00) [4]Я пытаюсь так :
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('alter table Lgota1 add nachalo date');
Query1.ExecSQL;
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('ALTER TABLE lgota1 ADD konets date');
Query1.ExecSQL; {Здесь возникает ошибка}
mike-d (2004-09-13 11:09:00) [5]http://www.degisy.com/degisy-db.php
bers (2004-09-13 09:24:00) [6]DatfBase Desktop -хорошо, но база разослана по районам, мне надо Update сотворить.
Пробую так:
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('ALTER TABLE lgota1 ADD nahcalo date');
Query1.ExecSQL;
Если добавить только 1 поле, все хорошо, но мне надо несколько полей, получаю ошибку. Table not exist причем ссылается на какую то временную таблицу.
Anatoly Podgoretsky (2004-09-10 19:12:00) [7]Database Desktop без потерь.
сергей1 (2004-09-10 08:48:00) [8]а где вы тут проблему увидели ?
создается новое поле:
alter table Table1
add new_column varchar(10)
затем, если поле должно быть not null, после заполнения столбца значениями, добавляем ограничение:
alter table Table1
alter column new_col varchar(11) not null
radiant09 (2004-09-09 23:09:00) [9]а если данные из таблицы слить в файл, очистить ее, добавить столбцы и залить обратно? что в духе...
copy <tlb_name> to '<path>' delimiter '#' null '';
delete from <tlb_name>;
alter table ...
copy <tlb_name> from '<path>' delimiter '#' null '';
или я не так понял суть вопроса?
bers (2004-09-09 22:52:00) [10]В общем то, этот вариант может быть и подойдет. Я уже подумывал, создать пустые таблицы(со всеми нужными полями), перенести данные и удалить старые таблицы.
Вроде можно добавить с помощью SQL но я в нем пока чайник :-/
megabyte (2004-09-09 22:30:00) [11]А м.б. тебе еще одну таблицу(№2) сделать и вносить туда данные, а в старую(№1) добавлять lookup поле, которое берет данные из новой таблицы №2?
bers (2004-09-09 18:55:00) [12]Ага, для хранения данных. Прога уже разослана по районам, с ней уже работают, и появилась необходимость вносить еще дополнительные сведения. Хотел сделать update, но ... не могу найти способ, как добавить недостающие поля.
megabyte (2004-09-09 16:38:00) [13]Только что попробовал добавить новое поле с даннымив таблицу. Было много мата... :)
Тебе какое поле-то надо?
С данными, lookup или вычисляемое?