Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.01.23;
Скачать: [xml.tar.bz2];

Вниз

Дабовление поля в существующую таблицу.   Найти похожие ветки 

 
Sollar   (2003-12-25 18:38) [0]

Здравствуйте, уважаемые мастера!
У меня возникла такая ситуация. В существующую таблицу Paradox (существуют, например, след. поля: ID(Autoincriment), STREET (Alpha 50)) необходимо добавить поле (IDCITY(LongInt)) из моей программы. В DataBase Desktop эта операция проста. Подскажите как это сделать из программы (пример)?


 
Sandman25   (2003-12-25 18:53) [1]

Query.Sql.Add("alter table t1 add idcity integer not null");
Query.ExecSQL


 
Tester   (2003-12-25 19:00) [2]

все так, только если в таблице уже есть данные надо ставить null или сделать значение по умолчанию


 
Sandman25   (2003-12-26 11:02) [3]

Точно.
Или можно так:
alter table t1 add idcity integer
update table t1 set idcity = 1 where street like "%Москва%"
update table t1 set idcity = 2 where street like "%Санакт-Петербург%"
update table t1 set idcity = 3 where idcity is null
alter table t1 modify idcity integer not null


 
Val   (2003-12-26 11:06) [4]

Остается вопрос о смысле изменения ддл с клиентского приложения для данного случая.


 
Sandman25   (2003-12-26 11:26) [5]

[4] Val © (26.12.03 11:06)

upgrade программы. Программа при запуске проверяет наличие данного поля, и если его нет, то добавляет его и справочник городов. ИМХО.


 
Val   (2003-12-26 11:30) [6]

>Sandman25 © (26.12.03 11:26) [5]
спасибо, я понимаю, зачем это может использоваться, в принципе, я просто уточняю у автора именно по данному вопросу, м.б. он запутался с задачей...


 
Sandman25   (2003-12-26 11:34) [7]

[6] Val © (26.12.03 11:30)

Согласен. Подождем автора...


 
LaidBack   (2003-12-26 15:12) [8]

> upgrade программы. Программа при запуске проверяет наличие
> данного поля, и если его нет, то добавляет его и справочник
> городов. ИМХО.

Как раз это и делает TDbCheck из DegisyDb, там проверяются таблицы в Run-Time с шаблоном, зашитым в exe, и если что-то отличается, то структура подгоняется под шаблон, без потери данных...ну если только не удалять нужно поле :)


 
Sollar   (2003-12-26 18:07) [9]

В БД действительно возникла необходимость модификации набора полей таблицы. Такой подход как создание новой таблицы и копирование из старой таблицы всех записей с соблюдением значения автоинкриментного поля не является хорошим. Спасибо за приведенные примеры и ссылочку на библиотеку. Буду пробовать. 29-го числа напишу, что получилось.



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

Форум: "Базы";
Текущий архив: 2004.01.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
3-72687
pashaz
2003-12-25 10:40
2004.01.23
Удаление пробелов


1-72710
man
2004-01-10 19:41
2004.01.23
Как переместить заблокированный файл не снимая блокировки


1-72701
fame
2004-01-14 11:41
2004.01.23
Исчезают компоненты типа BitBtn!?


1-72749
Memo
2004-01-13 20:09
2004.01.23
Как можно в memo сделать текст строк разного цвета


1-72761
_новый_
2004-01-14 11:58
2004.01.23
как скрыть панель запущенной программы которая находиться внизу в





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский