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

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

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.02.2011, 18:34   #11
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
если честно то этот вопрос мной плохо изучен, можете привести пример как из тела тригера обращатся к другой СУБД ? Серьёзно это мне очень интерестно.
Дома у меня нет примера, завтра в эту же тему примерчик брошу
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 06.02.2011, 18:35   #12
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

Цитата:
Сообщение от Sparky Посмотреть сообщение
есть вариант удалять из второй, а затем не заморачиваться и добавлять все, но этот вариант как-то не очень нравится. Как выбрать последние добавленные записи если первичный ключ составной, нужен просто пример. Давайте не отходить от темы рассуждением про триггеры и прочее.

в том и вопрос как идентифицировать записи которых не хватет в другой бд
если это не возможно гдето сохранять и потом читать, то ваш способ и есть самый самый, только без ограничения количества записей.
Код:
SELECT * FROM SchemeName 
WHERE SchemeID NOT IN (SELECT TSchemeID  FROM SchemeName)
vovk вне форума Ответить с цитированием
Старый 06.02.2011, 18:38   #13
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

вот этот запрос который вы написали не прокатит. Можно исходить из количество строк в одной и количества стрк в другой, если в исходной на 5 больше чем во второй, то нам нужны последние 5 строк, я написала для этого запрос (см. мои посты), но не работает в том случае когда ключ составной
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Старый 06.02.2011, 18:44   #14
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

Давайте вспомним о нормализации.. а теперь когда вспомнили давайте опередлим что такое "последние записи", а от этого уже начнём отталкиватся. Пока нет возможности определить какие записи последние, нет возможности правильно описать это ограничение в запросе
vovk вне форума Ответить с цитированием
Старый 06.02.2011, 18:45   #15
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Во всех ваших примерах идет обращение к данным одной таблицы. Как вы извлечете из этого информацию какие записи добавились? Приведите пример запроса одновременного обращения к таблицам из двух баз данных. Только так можно на уровне языка запросов определить есть ли новые записи.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 06.02.2011, 18:49   #16
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

я пишу класс на Java, открываю 2 connection выполняю 2 запроса:
первый выбор количества записей в 1 таблице и бд
второй выбор количества записей во 2 таблице и бд

Разница как раз количество добавленных записей после синхронизации.
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Старый 06.02.2011, 18:52   #17
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Код:
SELECT TOP 3 DeviceID  FROM DataPower ORDER BY DeviceID DESC
Если ваш SQL сервер поддерживает такие конструкции, то этот запрос вернет 3 записи с наибольшим значением DeviceID
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 06.02.2011, 18:55   #18
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

а зачем мне это?
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Старый 06.02.2011, 18:56   #19
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

где-то читала что как раз выбирать последние записи сортируя по убыванию не правильно
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Старый 06.02.2011, 19:02   #20
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Если идентификаторы ваших новых записей при вставке наращиваются, то вам как раз и нужно найти новые записи с максимальными ключами. А неправильно выбирать последние записи только в случае если значение поля в ключе сортировки не уникально
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Копирование данных из одной книги в другую в разные столбцы. kipish_lp Microsoft Office Excel 15 15.07.2015 07:27
копирование данных из одной базы в другую IB Expert chib_sv SQL, базы данных 0 06.08.2010 09:13
Копирование данных из одной рабочей книги в другую макросом. Andrey3055 Microsoft Office Excel 2 30.10.2009 22:00
Копирование данных из одной таблицы Paradox в другую Zuzya БД в Delphi 3 16.05.2009 19:11
Копирование данных из одной таблицы в другую! фЁдОр БД в Delphi 18 06.01.2008 19:27