Это моя проблема:
У меня есть старая база данных, без каких-либо ограничений.Есть несколько таблиц, которые я копирую из старой базы данных в новую.Эта копия проста, и я запускаю ее ежедневно ночью на задании.
В моей новой базе данных (прекрасно с ограничениями) я создал все эти свободные таблицы в ограничении с основной таблицей.все эти таблицы имеют ключ из 3ID и строку.
Моя основная таблица переведет эти 3ID и строку в 1 ID, поэтому в этой таблице будет 5 столбцов.
В свободных таблицах некоторые записи могут быть двойными, поэтому для вставки идентификаторовв основной таблице я взял бы 3 идентификатора и строку и вставил их в основную таблицу.
Таблицы в старой базе данных обновляются ежедневно.копия запускается ежедневно, и из основной таблицы я хотел бы установить отношение «один ко многим» со скопированными таблицами.
Это вызывает у меня проблему:
как мнеобновить основную таблицу, ничего не делать с уже вставленными ключами и добавить новые ключи?Не удаляйте старые ключи, если они удалены из старой базы данных.
Я думал о том, чтобы сделать четкое представление обо всех ключах в старой базе данных, но как мне обновить это до основной таблицы?Это должно быть выполнено до ежедневного копирования других таблиц (или это не сработает из-за ограничений)
Еще одна идея состоит в том, чтобы запустить это обновление главной таблицы в Linq-to-SQL на моем веб-сайте, ноэто не кажется очень чистым.
Короче говоря:
- Старая БД - это SQL Server 2000
Новая БД - это SQL Server 2008
Старый БД не имеет ограничений, копирование некоторых таблиц происходит ежедневно.
Должна быть главная таблица, переводящая ключ 3ID и 1string вКлюч 1ID с ограничением для других таблиц.
Основная таблица должна быть обновлена перед заданием копирования, иначе ограничения не будут выполнены.Основная таблица будет отличаться от нескольких столбцов 1 таблицы.Это отличное будет в представлении о старой базе данных.
В основную базу данных могут быть добавлены только новые строки
У кого-нибудь естьидеи, некоторые рекомендации?
Визуализируйте базу данных:
Эти свободные таблицы являются подробностями о компании.1 таблица имеет адрес (а) 1 таблица имеет контактное лицо, другая таблица имеет имя пользователя и логин для нашей системы (может быть больше 1 для 1 компании), компания идентифицируется по 3ID и 1-й строке.основная таблица будет перечислять эти уникальные идентификаторы и строку, чтобы их можно было преобразовать в 1 идентификатор.этот 1 идентификатор затем используется в остальной части моей БД.Отношение один ко многим будет затем сделано из основной таблицы во все эти свободные таблицы.Я надеюсь, что это немного прояснит:)