Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как можно изменить длину поля? [D6, dBase, FoxPro]


button ©   (2002-05-23 15:23:00) 

Как можно изменить длину поля? Есть некоторая таблица в ней поле, например, SomeField c(20), а нужно в результате получить
SomeField c(40)
Я пробовал нечто вроде:
ALTER TABLE table ALTER SomeField TO SomeField c(40) POSITION 5
Ругается на второй ALTER
Подскажите выход.


Johnmen   (2002-05-23 17:10:00) [1]

В принципе WellSlava © (23.05.02 15:44) универсально, но с учетом специфики dBase, FoxPro надо подправить...


WellSlava   (2002-05-23 15:44:00) [2]

делается так:
Alter Table Name drop FieldOld
Alter Table Name add FieldNew
если есть данные:
Alter Table Name add Field_Tmp VarChar(10) - временное поле
Update Name Set Field_Tmp = FieldOld - сохраняем данные
Alter Table Name drop FieldOld
Alter Table Name add FieldNew VarChar(10)...
Update Name Set FieldNew = FieldOld - заносим данные
Alter Table Name drop Field_Tmp


button   (2002-05-23 15:30:00) [3]

Ну удружил :)))


Johnmen   (2002-05-23 15:25:00) [4]

Почитать спецификацию SQL и правильно написать запрос...:)


Наверх

Титульная страница Поиск, карта сайта Написать письмо