Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказчика  [new]
Alexey Savelyev
Member

Откуда: Ашхабад
Сообщений: 220
Ребята, вот такой вопрос возник.
Допустим я у себя на компе разрабатал некоторую базу и установил ее клиенту-заказчику на их сервак. Заказчик набил в базу уже некоторую информацию и в общем уже довольно активно работает.
Теперь я на своем компьютере-разработчика сделал довольно значительные изменения в базе (создал новые процедуры, тригера, изменил структуру таблиц и т.д.).
Проблема как теперь все эти изменения перенести к заказчику.
Генерить срипты для каждой процедуры, тригера и т.д. конечно можно, но есть недостатки. Во первых, если сделано много изменений, то времени займет много. (Для каждой процедуры сначала у себя скрипт генерить, затем этот скрипт у заказчика запускать). Во вторых, можешь забыть что-то.
Второй вариант. У заказчика скопировать данные из таблиц рабочей базы в таблицы временой базы данных. Затем просто физически перезаписать файлы базы данных файлами своей новой базой. И переписать уже в новую базу данные из временной БД.

Наверняка у кого-то возникала такая же проблема.
22 янв 03, 17:17    [112627]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
VVG_
Member

Откуда: Санкт-Петербург
Сообщений: 1203
надо посмотреть, как обычно пишутся сервис-паки и сделать также.
22 янв 03, 17:21    [112636]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
Genady
Member

Откуда: Москва
Сообщений: 2005
Можно в Power Designer реверснуть обе базы, а затем сравнить полученные модели и по расхождениям сгенерить корректирующий скрипт.
Правда скрипт все равно проверять надо, могут быть глюки, во всяком случае в версии 7.5 были.
22 янв 03, 17:28    [112647]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
big-duke
Member

Откуда:
Сообщений: 6763
Сталкивался с тагой траблой. Но пользуюся Вашим вариантом 1 - спокойнее. Тем более, что View,sp,udf и триггеры можно просто создать все заново если использовать опцию <generate drop ...> . А изменения в таблицах фиксировать и руками менять у заказчика.
Не претендую на истину, просто мне так удобней.
22 янв 03, 17:37    [112661]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
Alexey Savelyev
Member

Откуда: Ашхабад
Сообщений: 220
Что такое Сервис-папки?
22 янв 03, 17:40    [112668]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
VVG_
Member

Откуда: Санкт-Петербург
Сообщений: 1203
Это такие специальные директории для хранения изменений. Очень удобная штука.
22 янв 03, 17:42    [112673]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
Alexey Savelyev
Member

Откуда: Ашхабад
Сообщений: 220
А можно немножко о них. Где по ним найти док как с ними работать. И где эти директории искать?
22 янв 03, 18:27    [112731]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
VVG_
Member

Откуда: Санкт-Петербург
Сообщений: 1203
В BOL посмотрите по слову service fathers.
22 янв 03, 18:37    [112744]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
Gobzo Kobler
Member

Откуда: у людей такая фантазия?
Сообщений: 387
Service Popes?
22 янв 03, 18:51    [112757]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
ura
Member [заблокирован]

Откуда: Киев
Сообщений: 932
Я у себя сделал так:
в обоих базах создаются вьювы с 2-мя полями:
obj_nm и crc (контрольная сумма). Делается хранимая процеура, которая делает распределенный запрос к обоим вьювам и получает имена измененных/созданных/удаленных объектов. Далее из syscomments вытаскивается скрипт изменения (где надо заменяется create на alter). Можно было-бы, конечно, syscomments напрямую сравнивать, но по инету очень долго будет...
22 янв 03, 20:01    [112803]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
Александр Гладченко
Member

Откуда:
Сообщений: 10752
Блог
Блин, ну Вы же знаете самую главну. информацию - что поменялось...
От этого и пляшите.
23 янв 03, 01:28    [112909]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
AAron
Member

Откуда: Москва
Сообщений: 4324
вообще, есть утилиты типа SQL Compare и проч.,
но изменения надо как-то хранить, иначе можно огрести большие проблемы в будущем. трудоемко, но зато потом будет проще
23 янв 03, 01:57    [112912]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
cvasil
Member

Откуда:
Сообщений: 519
Используйте source code management системы (VSS, CVS, RCS, ...)
По крайней мере будете знать что и когда было изменено в коде.
Как накатывать эти изменения на базу клиента - это уже отдельная задача.
Сильно зависит от специфики проекта. Тут общими рекомендациями не обойдешься.
23 янв 03, 05:47    [112940]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
Oleg Cherkasenko
Member

Откуда:
Сообщений: 75
Есть такая утилита SQLCompare, которая сравнивает две MS SQL Server базы и выдает разностные скрипты, для "подгонки" одной базы к другой. Даже лучше, чем PowerDesigner.
23 янв 03, 16:54    [113526]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
Alex R
Member

Откуда:
Сообщений: 9
> Есть такая утилита SQLCompare... ...Даже лучше, чем PowerDesigner.

А еще есть такая утилита как AdeptSQL Diff ;-), даже лучше чем тормознутый SQLCompare (по крайней мере по скорости - раз в 20 быстрее, что для сложных баз очень даже ощутимо). И получение diff-скриптов там быстрее и удобнее (хотя рекомендуется каждый раз смотреть, что он там нагенерил ;-)

Посмотреть/закачать можно здесь: www.adeptsql.com.
23 янв 03, 17:53    [113601]     Ответить | Цитировать Сообщить модератору
 Re: 6. Перенос базы данных с компьютера-разработчика на компьютер-клиента (заказ  [new]
Oleg Cherkasenko
Member

Откуда:
Сообщений: 75
Но, между нами,:-) крэк к SQLCompare есть, а к указанному Вами продукту - ....?
23 янв 03, 23:30    [113831]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить