Главная страница
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.02 c
14-82977
Pascal's programmer
2002-11-07 05:56
2002.11.25
Книгу


14-82920
Николай Быков
2002-11-04 18:32
2002.11.25
А вот теперь держите ответ передо мной:


6-82897
Subfire
2002-09-29 02:25
2002.11.25
Программирование WinSocket


3-82645
AccessLamer
2002-11-06 11:49
2002.11.25
Хочу аналог интербейсовского генератора в аксесе...


1-82685
Evyshka
2002-11-13 09:55
2002.11.25
Как вытащить текущий год ? :-))