![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как обновить структуру базы данных не теряя данные ? [D6, MSSQL]
dreamse © (2006-01-06 09:18:00)Есть база MS SQL ( MSDE )
В новых версиях программы структура базы меняеться , в основном добавляються новые таблицы и ключи в уже существующие таблицы , удаления нет.
Каким образом можно обновлять структуру базы данных чтобы при этом все данные в базе оставались на своих местах ? Обновление хотелось бы сделать автоматическое чтобы не напрягать вообще пользователей.
Есть ли готовое решение ?
Fay (2006-01-06 12:55:00) [1]2 Desdechado © (06.01.06 12:45) [8]
> а вот если тупо смотрим на таблицу
Я не настаиваю на "тупо".
Desdechado (2006-01-06 12:45:00) [2]это если четко отслеживается версионность структуры, тогда переход от одной версии к другой прост
а вот если тупо смотрим на таблицу, видим, что не хватает 2 полей, пытаемся их добавить, а они, оказывается, зависят от недобавленных в другие таблицы - то это те самые "перректальные технологии разработки"
Fay (2006-01-06 12:31:00) [3]2 Desdechado © (06.01.06 12:17) [6]
При нормальной стуктуре описания изменений такие косяки легко прослеживаются. В том смысле, что порядок, конечно, важен, но автоматизировать процесс не сложно.
Просто нужно свести к минимуму применение перректальных технологий разработки.
Desdechado (2006-01-06 12:17:00) [4]если ты не знаешь, что будешь делать с таблицей, то никакого скрипта тебе не написать
все изменения должны выполняться последовательно и логично
нельзя, допустим, пытаться втулить в таблицу столбец, который является внешним ключомна другую таблицу, для которой еще не выполнены операции определения первичного ключа
поэтому ПОРЯДОК ВЫПОЛНЕНИЯ важен
следовательно, скрипт придется писать, а не тупо подгонять структуру под эталон, не понимая связи таблиц
Reindeer Moss Eater (2006-01-06 11:59:00) [5]Если можно то синтаксис я бы всё таки посмотрел</I
А что мешает? Дай угадаю, - документацию украли.
Dreamse (2006-01-06 11:51:00) [6]синтаксис alter table позволит сделать слудуещее ?
function alter_ляляля(старая таблица, Новая таблица)
в итоге в старой таблице появляються все недостающие колонки с сохранением данных.
Вот так ? или как ? Если можно то синтаксис я бы всё таки посмотрел
Fay (2006-01-06 11:25:00) [7]2 Dreamse (06.01.06 11:01) [2]
> Поподробней можно ?
Благородный дон, я решительно не понимаю, что именно требует уточнения :
1) синтаксис alter table
2) способы извлечения метаданных
3) прогноз погоды на завтра
?
К тому же остаются загадкой понятие "добавлять данные" и совместимость "я не знаю какую имено колонку" с "просто у меня есть уже список новый колонок"
Думаю придётся Вам описать задачу кратко и ясно (как шпаргалки пишут), снабдив текст уточнениями о том, где именно возникают сложности.
Dreamse (2006-01-06 11:01:00) [8]Поподробней можно ?
Кстати слудует учитывать что я не знаю какую имено колонку или какие данные добавлять , просто у меня есть уже список новый колонок и таблиц , так вот из него и нужно добавлять всё то чего нету
Fay (2006-01-06 09:32:00) [9]alter table, что-ли?