Клонировать строку таблицы БД через MVC в SQL Server - PullRequest
0 голосов
/ 24 марта 2010

Существует ли простое решение для дублирования строк таблицы в SQL Server, а также всех строк таблицы с внешними ключами, указывающими на строку клонированной таблицы? У меня есть «главная» таблица и куча «дочерних» таблиц, которые имеют внешний ключ в идентификаторе главной таблицы. Мне нужно не только создать идеальную копию главной таблицы, но и клонировать каждую дочернюю таблицу, ссылающуюся на главную таблицу. Есть ли более простой способ сделать это, чем создать новую строку в главной таблице, скопировать информацию из строки, подлежащей клонированию, затем пройти через каждую дочернюю таблицу и сделать то же самое с каждой строкой, указывающей на клонированную строку в главной таблице таблица

Я использую базу данных SQL Server 2005, доступ к которой осуществляется через C # ASP.net MVC 1.0.

1 Ответ

0 голосов
/ 24 марта 2010

Если под «простым» вы подразумеваете, что существует процедура, которая может быть вызвана для этого, то нет, это не так. Однако вы можете использовать представления INFORMATION_SCHEMA, такие как INFORMATION_SCHEMA.COLUMNS и INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS, чтобы запрашивать столбцы в таблице или списке связанных таблиц и динамически создавать операторы INSERT для копирования одной строки в другую. Конечно, это не учитывает другие ограничения уникальности, которые могут быть в таблицах (например, таблица со столбцом «Имя», которая требует, чтобы значения были уникальными).

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