Личность и первичный ключ

#sql-server #migration

Вопрос:

c# sql server: Мне нужно импортировать несколько таблиц из Access в sql server. Новые таблицы sql server уже определены и созданы. Таблицы доступа имеют отношения первичный ключ — внешний ключ, которые необходимо поддерживать. Я хотел бы, чтобы новые таблицы sql использовали значения идентификаторов для первичных ключей, но я не могу легко загружать устаревшие строки и поддерживать отношения, если я это сделаю. Я мог бы загрузить данные с помощью identity_insert, но для этого мне нужно выйти из своего программного обеспечения ORM (дозвукового). Возможно, я смогу сделать свои новые первичные ключи неидентичными типами, но тогда возникнет проблема с созданием уникальных идентификаторов для всех строк, которые я добавлю позже. Я уверен, что где-то здесь есть достойное решение.

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

1. Использовались ли вообще новые таблицы в SQL? Они что, совсем грязные и пустые?

Ответ №1:

Не могли бы вы импортировать первичные ключи как типы, не являющиеся идентификационными, а затем, как только все данные из всех таблиц будут импортированы, изменить их на типы идентификаторов?

Ответ №2:

Создайте таблицы с PKS как «int» (без идентификатора), загрузите свои данные, а затем измените поля PK на идентификатор int…