Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.01.2011, 13:29   #1
Kotjona
 
Регистрация: 23.02.2009
Сообщений: 4
Вопрос Локальная БД на нескольких компьютерах

У меня такая проблема. Есть локальная база данных – создавалась в BDE в Paradox, приложение на Delphi.
Таблица Kniga (ID, Avtor, Nazvanie, Izdat) и Izdadel (ID, Izd), связь Kniga.Izdat - Izdadel.ID.
Но заказчик устанавливает базу на несколько компьютеров и заполняет их независимо друг от друга (чтобы быстрее набрать информацию). Теперь мне нужно соединить эти данные в одну базу. Но на каждом компьютере свой список Издательств, а значит ссылки из таблицы Книга не совпадают.
У меня есть только она идея – экспортировать все данные в Excel, соединить их в одну таблицу и импортировать в пустую базу. Но SQL я плохо знаю, подскажите, пожалуйста, можно ли так сделать и если – да, то какими будут запросы.
Спасибо.
Kotjona вне форума Ответить с цитированием
Старый 21.01.2011, 13:52   #2
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

Создать новую чистую БД и "аппендом" перегнать в нее записи из всех таблиц. Связующие поля придется переписать заново, т.к. в них будут повторы.
Структура БД простейшая, поэтому все получится.
Имхо, таблицы отличаются всего одним полем. Их действительно нужно две? Может одной обойтись можно?
И еще, Paradox - худший из всех вариантов для работы по сети. В один момент может оказаться, что "Ромео и Джульетта" написал Пушкин.
_SERGEYX_ вне форума Ответить с цитированием
Старый 21.01.2011, 14:12   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Сочувствую, коллега!

Вы неправы в том, что позволили им подобные "извращения"
Хотя бы справочник издательств надо было набить на одном компьютере, а уже книги можно было набирать и на разных (хотя, конечно, алгоритм генерации ID в таблице книга нужно делать с учётом раздельной работы! Либо код узла вначале добавить. либо уникальные GUID генерить..

теперь же, Вам, если Вы хотите это всё разгрести, нужно сливать таблицы в единую БД - при этом те записи, которые имеют одинаковые ID - менять ID на новые.

Ну и закрыть глаза, что одно и то же издательство может быть несколько раз, с разными ID (p.s. а почему в характеристиках книг и особенно издательств так мало полей?! Должен быть год издания книги, ISBN - это как минимум.
А в издательстве город, где это издательство зарегистрировано, юридический адрес, контактные данные и прочая...
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Трабла с Alphaskin На разных компьютерах MyLastHit Помощь студентам 1 06.12.2010 05:29
Не на всех компьютерах видит приложение Shevali БД в Delphi 0 08.05.2010 20:58
На разных компьютерах по разному считает jmaz Microsoft Office Excel 1 19.01.2010 15:18
Программа не запускается на компьютерах без Delphi CraZZy RabbIt Общие вопросы Delphi 8 24.02.2009 17:05
По-разному печатается на разных компьютерах igr БД в Delphi 6 05.01.2009 16:19