как сопоставить пользователей, определенных в разных базах данных sql?

#sql #sql-server-2005

#sql #sql-server-2005

Вопрос:

Я создаю приложение для Windows, а база данных — SQL Server 2005. В этой базе данных B я определяю таблицу для сохранения имени пользователя и паролей. Теперь моя компания покупает другое приложение, которое имеет собственную базу данных с той же таблицей для хранения имени пользователя и пароля.

Они хотят войти в оба приложения с одинаковым именем пользователя и паролем. что я должен сделать, чтобы сопоставить пользователей этих двух таблиц?

Комментарии:

1. Я думаю, что большинству людей потребуется гораздо больше информации, чтобы найти решение.

Ответ №1:

Зависит от того, как быстро вам нужно узнать о новом пользователе в «другом» приложении — вы могли бы:

  • создайте идентичные таблицы в базе данных «other» и периодически заполняйте их из основных таблиц, например, с помощью еженощного задания пакета SSIS; При этом у вас будут периодические обновления, например, каждую ночь, каждые 4 часа и т. Д., Но нагрузка на сервер будет низкой

или:

  • установите триггер для «главной» таблицы и «реплицируйте» каждую операцию над этой таблицей (вставка, обновление, удаление) в «подчиненную» таблицу в другой базе данных; у вас есть немедленные обновления, но нагрузка на сервер может быть довольно высокой для этого

или:

  • вы могли бы создать третью базу данных, содержащую только материалы для управления пользователями, и обе «производственные» базы данных ссылались бы на эту «пользовательскую» базу данных для управления пользователями; вы могли бы избежать дублирования данных, и обе производственные системы постоянно использовали бы одни и те же актуальные данные

или:

  • вы могли бы использовать проверку подлинности Windows в первую очередь и избавиться от всех «еще одного пользователя и таблицы разрешений» в любой из баз данных…