Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Сравнение 2ух баз данных АБИС Koha  (Прочитано 852 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн dobriivoin

  • Автор темы
  • Новичок
  • *
  • Сообщений: 31
    • Просмотр профиля
Есть 2 БД: (koha03 старая и koha_library откорректированная).
Библиотекари в 03_старой занесли около 3000 изображений к книгам. После тестирования работы Абис Коха пришлось откорректировать БД,но не охота заново заносить в ручную изображения обложек книг. Как решить проблему на уровне команд  БД mysql?

таблицы biblioimages двух баз (koha03 и koha_library) одинаковы!

В БД koha03 в таблице biblio: author=Schreiner, Thomas R и title=Teologia Noului Testament : maretia lui Dumnezeu соответствует biblionumber=39813

в БД koha_library: author=Schreiner, Thomas R и title=Teologia Noului Testament : maretia lui Dumnezeu соответствует biblionumber= 8610

Нужно в БД koha_library в таблице biblioimages заменить biblionumber с 39813 на 8610 и так для всех 3000.


То есть нужно сравнить таблицы biblio двух баз данных (koha03 и koha_library) и если значение полей author,
title, copyrightdate совпадают, то в  (koha_library) в таблице biblioimages заменить значение biblionumber на то которое сейчас есть в таблице biblio (koha_library).
« Последнее редактирование: 23 Июня 2015, 12:13:00 от dobriivoin »

Оффлайн spk-ubuntu

  • Активист
  • *
  • Сообщений: 502
    • Просмотр профиля
Re: Сравнение 2ух баз данных АБИС Koha
« Ответ #1 : 24 Июня 2015, 20:06:50 »
Ни разу не mysql-щик, но чтобы тема не пропала - отпишусь. Может кто из разбирающихся поможет.
В Transact-SQL (MSSQL Server) это выглядело бы примерно так (при условии, что базы находятся на одном сервере):
Цитировать
update TNew set biblionumber = TOld.biblionumber
from koha_library..biblioimages TNew inner join koha03..biblioimages TOld
    on TNew.author = TOld.author and TNew.title = TOld.title and TNew.copyrightdate = TOld.copyrightdate

 

Страница сгенерирована за 0.03 секунд. Запросов: 25.