Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
14-82983
Igorek
2002-11-06 14:52
2002.11.25
Комната в Киеве на Теремках


1-82693
K_O_T
2002-11-14 14:36
2002.11.25
Глюк с ListView


1-82729
sen
2002-11-15 08:52
2002.11.25
Узнать, какая русская буква нажата


14-82912
777
2002-11-07 21:25
2002.11.25
drum&bass


3-82646
Ihor Osov'yak
2002-11-06 11:52
2002.11.25
Хранимые проц в аксес2000




   Наверх