Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.25;
Скачать: CL | DM;

Вниз

Реструктуризация таблицы Paradox программно   Найти похожие ветки 

 
OlegKrt   (2002-11-05 15:49) [0]

Кто знает, как можно произвести реструктуризацию (добавление, удаление поля, а главное изменение типа или размера поля) таблицы Paradox программно. Если удаление и добавление нового поля можно произвести с помощью Alter table, то как изменить размер поля (string,blob или numeric) не теряя при этом данных


 
Val ©   (2002-11-05 16:14) [1]

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


 
MsGuns ©   (2002-11-05 16:22) [2]

Делешь цепочку альтеров
1. Создаешь новое поле NewPole с нужной длиной, названием, типом и т.д. В него суешь содержимое OldPole
2. Удаляешь поле OldPole
3. Поле NewPole перименовываешь в OldPole (если название поля надо оставить)

А можно и TBatchMove, где в качестве целевой используется предварительно созданная новая, "правильная" таблица, в режиме добавления и с контейнером связок "Старе поле">"Новое поле", с последующим удалением старой таблы и переименованием новой в старое имя. В этом случае можно получить даже НД с "неуместившимися" данными (Problems).


 
mike-d ©   (2002-11-05 16:34) [3]

http://www.dbwork.kuban.ru/rus/index.html
TDbCheck, TRenameFields компоненты решат Ваши проблемы!

Одно небольшое дополнение:
Эта компонента не всегда корректно правит индексы после сбоев электропитания (вероятно не обнаруживает, что они битые), а также при наличии файлов БД с расширением .VAL (значения по умолчанию).
Лечится все это элементарным удалением индексов и *.val. И вообще (из личного опыта) значениями по умолчанию лучше не пользоваться, для этого есть AfterInsert.



Страницы: 1 вся ветка

Текущий архив: 2002.11.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
1-82689
MetalFan
2002-11-14 11:56
2002.11.25
есть ли дискета в дисководе


3-82612
stalker_pro
2002-11-04 18:50
2002.11.25
Вопрос по ADO и MIDAS


1-82866
bondik
2002-11-14 15:57
2002.11.25
вопос


14-82939
Pascal's programmer
2002-11-06 05:03
2002.11.25
DrawFocusRect


14-82998
Залетевший
2002-11-07 19:20
2002.11.25
Биос СРОЧНО