Вам необходимо объявить длину для @backupName
. Если вы не укажете длину в объявлении, то по умолчанию она будет равна 1 символу. Вот почему вы видите усеченный путь.
DECLARE @backupName NVARCHAR(250) = N'C:\.......
Вам также необходимо исправить RESTORE
. Например:
RESTORE DATABASE ClonedDb
FROM DISK=@backupName
WITH MOVE 'MyDB_Data' TO 'C:\SQLData\MyDB2.mdf',
MOVE 'MyDB_Log' TO 'C:\SQLLogs\MyDB2.ldf';
Вам нужно будет заменить логические и физические имена файлов в соответствии с вашей средой. Директивы WITH MOVE
необходимы, поскольку исходная база данных по-прежнему будет в оперативном режиме и будет использовать исходные физические файлы. Если ваша исходная база данных больше не была в сети, вы могли бы уйти с тем, что у вас было.