Почему значения столбца «идентичность» неверны, когда я присоединяю базу данных? - PullRequest
2 голосов
/ 11 июня 2011

Кто-то отправил мне базу данных (с помощью файла .mdf и .ldf), которую я прикрепил на сервере (без ошибок, предупреждений и т. Д.), И хотя у меня нет доказательств (поскольку не имея доступа к серверу, с которого поступила БД), похоже, значения первичного ключа (идентификатора) отличаются от того, чем они были изначально. Кроме того, они выглядят как «сброс» - все значения первичного ключа начинаются с 1, тогда как на основе ссылок на внешний ключ ясно, что это неверно (например, таблица только с 1 строкой имеет значение первичного ключа 1, но таблица, которая ссылается на него, ссылается на значение 7).

Хотя мне все равно, мне любопытно, почему это происходит (если есть объяснение)?

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

Edit: Насколько я могу судить, ссылки на внешние ключи настроены правильно.

Вот несколько скриншотов: foreign key relationship foreign key relationship columns WTF!?

Ответы [ 2 ]

3 голосов
/ 11 июня 2011

Все, что я могу придумать, так как существуют FK, это то, что у них был плохой дизайн, и затем кто-то понял, что они нуждаются в FK, но уже были плохие данные, которые они не хотели удалять, и таким образом создали FK WITH NOCHECK

Все ли потерянные записи являются ранними идентификационными номерами?

1 голос
/ 11 июня 2011

Присоединение базы данных никогда не меняет содержимое таблицы.Все значения, которые вы видите, поступают из приложения, создавшего базу данных. `` выбор '' не сломан .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...