Мне нужно реализовать веб-процедуру администрирования с использованием asp.net mvc 4 и структуры сущности.восстановить db из связи с инфраструктурой сущности
В этой процедуре я разрешаю пользователю выполнять резервное копирование и восстановление некоторых баз данных SQL Server.
У меня нет проблем с процедурой резервного копирования, но у меня есть некоторые проблемы с процедурой восстановления.
Я думаю, что хорошая SQL последовательность команд такова:
"ALTER DATABASE [" + prj.Denominazione_Db + "] SET SINGLE_USER WITH ROLLBACK IMMEDIATE"
"RESTORE DATABASE [" + prj.Denominazione_Db + "] FROM DISK = '" + fileDaRestorare +"'"
"ALTER DATABASE [" + prj.Denominazione_Db + "] SET MULTI_USER"
"GO"
Я установил дб в однопользовательском режиме, восстановления и сброса в многопользовательском режиме. Я провел несколько экспериментов, используя соединение с инфраструктурой сущности, но получаю несколько исключений, например . Я не могу использовать команду alter database в команде с несколькими командами или Невозможно вызвать команду alter database внутри транзакции.
Если я пытаюсь выполнить для непосредственного восстановления, я получаю сообщение, которое не может выполнить восстановление внутри транзакции.
Знаете ли вы, может ли я вызвать эту последовательность команд, используя соединение с инфраструктурой сущности?
спасибо, Luca
В любом случае вы должны начать с «использовать TempDB». Я был бы очень удивлен, если бы вы могли восстановить подключенную к нему базу данных. – tschmit007
вы пробовали использовать (TransactionScope trans = new TransactionScope (TransactionScopeOption.Suppress)) {} ' – tschmit007