При использовании сценариев для восстановления базы данных ошибка говорит о том, что набор резервных копий содержит резервную копию базы данных, отличную от существующей

Вы можете сделать это, используя groupby для группировки в интересующей колонке, а затем apply list для каждой группы:

In [1]:
# create the dataframe    
df = pd.DataFrame( {'a':['A','A','B','B','B','C'], 'b':[1,2,5,5,4,6]})
df
Out[1]:
   a  b
0  A  1
1  A  2
2  B  5
3  B  5
4  B  4
5  C  6

[6 rows x 2 columns]

In [76]:
df.groupby('a')['b'].apply(list)

Out[76]:
a
A       [1, 2]
B    [5, 5, 4]
C          [6]
Name: b, dtype: object
1
задан istillhavetogopee 16 January 2019 в 18:49
поделиться

1 ответ

Слишком долго комментировать

Использование опции WITH REPLACE (как вы указали) перезапишет базу данных тем, что содержится в резервной копии. Причина, по которой вы получаете эту ошибку в вашем скрипте, может быть в том, что вы используете опцию FILE.

Параметры FILE, предшествующие имени устройства резервного копирования, определяют логические имена файлов базы данных, которые должны быть восстановлены из резервного набора; например, FILE = 'FILENAME'

Причина, по которой вы получаете ошибку, может заключаться в том, что набор резервных копий не является первой резервной копией базы данных в наборе носителей. Вам необходимо добавить правильный номер к опции FILE в предложении WITH.

....
WITH FILE = 1,  --this may not need to be 1
....

Если вам не нужно явно указывать имя файла, отбросьте обе опции FILE.

RESTORE DATABASE add_BackupDev
FROM DISK = @LastDatabaseRestore
WITH
MOVE 'add_backupDev' TO 'R:\DATA\add_BackupDev.mdf',
MOVE 'add_BackupDev_log' TO 'L:\LOG\add_BackupDev.ldf',
NOUNLOAD,
REPLACE;
GO

Это должно восстановить вашу базу данных.

0
ответ дан scsimon 16 January 2019 в 18:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: