У меня есть база данных SQL-сервера с большим количеством таблиц и данных. Мне нужно воспроизвести его локально в контейнере докера. Я успешно экспортировал схему и воспроизвел ее. Когда я выгружаю данные в файл SQL, он не экспортирует автоматически сгенерированные поля (например, идентификаторы или uuids)
Вот схема пользовательской таблицы:
create table user (
id_user bigint identity constraint PK_user primary key,
uuid uniqueidentifier default newsequentialid() not null,
id_salarie bigint constraint FK_user_salarie references salarie,
date_creation datetime,
login nvarchar(100)
)
Когда он экспортирует и элемент из этой таблицы, я получаю такую вставку:
INSERT INTO user(id_salarie, date_creation, login) VALUES (1, null, "example")
Как следствие, большинство моих вставок выдают ошибки внешнего ключа, потому что идентификаторы, сгенерированные моей новой базой данных, не совпадают с идентификаторами в старой базе данных. Я не могу изменить все вручную, так как данных слишком много.
Вместо этого я хотел бы иметь такую вставку:
INSERT INTO user(id_user, uuid, id_salarie, date_creation, login) VALUES (1, 1, "manuallyentereduuid" null, "example")
Есть ли способ сделать это напрямую с помощью Datagrid? Или, может быть, конкретный способ SQL-сервера генерировать операторы вставки таким образом?
Не стесняйтесь спрашивать подробности в комментариях.