You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: sp_DatabaseRestore.sql
+46-46Lines changed: 46 additions & 46 deletions
Original file line number
Diff line number
Diff line change
@@ -344,116 +344,116 @@ CREATE TABLE #Headers
344
344
);
345
345
346
346
/*
347
-
Correct paths in case people forget a final "\"
347
+
Correct paths in case people forget a final "\" or "/"
348
348
*/
349
349
/*Full*/
350
-
IF (SELECTRIGHT(@BackupPathFull, 1)) <>'\'ANDCHARINDEX('\', @BackupPathFull) >0--Has to end in a '\'
351
-
BEGIN
352
-
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @BackupPathFull to add a "\"', 0, 1) WITHNOWAIT;
353
-
SET @BackupPathFull +=N'\';
354
-
END;
355
-
ELSEIF (SELECTRIGHT(@BackupPathFull, 1)) <>'/'ANDCHARINDEX('/', @BackupPathFull) >0--Has to end in a '/'
350
+
IF (SELECTRIGHT(@BackupPathFull, 1)) <>'/'ANDCHARINDEX('/', @BackupPathFull) >0--Has to end in a '/'
356
351
BEGIN
357
352
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @BackupPathFull to add a "/"', 0, 1) WITHNOWAIT;
358
353
SET @BackupPathFull +=N'/';
359
354
END;
360
-
/*Diff*/
361
-
IF (SELECTRIGHT(@BackupPathDiff, 1)) <>'\'ANDCHARINDEX('\', @BackupPathDiff) >0--Has to end in a '\'
355
+
ELSEIF (SELECTRIGHT(@BackupPathFull, 1)) <>'\'--Has to end in a '\'
362
356
BEGIN
363
-
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @BackupPathDiff to add a "\"', 0, 1) WITHNOWAIT;
364
-
SET @BackupPathDiff+=N'\';
357
+
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @BackupPathFull to add a "\"', 0, 1) WITHNOWAIT;
358
+
SET @BackupPathFull+=N'\';
365
359
END;
366
-
ELSEIF (SELECTRIGHT(@BackupPathDiff, 1)) <>'/'ANDCHARINDEX('/', @BackupPathDiff) >0--Has to end in a '/'
360
+
/*Diff*/
361
+
IF (SELECTRIGHT(@BackupPathDiff, 1)) <>'/'ANDCHARINDEX('/', @BackupPathDiff) >0--Has to end in a '/'
367
362
BEGIN
368
363
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @BackupPathDiff to add a "/"', 0, 1) WITHNOWAIT;
369
364
SET @BackupPathDiff +=N'/';
370
365
END;
371
-
/*Log*/
372
-
IF (SELECTRIGHT(@BackupPathLog, 1)) <>'\'ANDCHARINDEX('\', @BackupPathLog) >0--Has to end in a '\'
366
+
ELSEIF (SELECTRIGHT(@BackupPathDiff, 1)) <>'\'--Has to end in a '\'
373
367
BEGIN
374
-
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @BackupPathLog to add a "\"', 0, 1) WITHNOWAIT;
375
-
SET @BackupPathLog+=N'\';
368
+
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @BackupPathDiff to add a "\"', 0, 1) WITHNOWAIT;
369
+
SET @BackupPathDiff+=N'\';
376
370
END;
377
-
ELSEIF (SELECTRIGHT(@BackupPathLog, 1)) <>'/'ANDCHARINDEX('/', @BackupPathLog) >0--Has to end in a '/'
371
+
/*Log*/
372
+
IF (SELECTRIGHT(@BackupPathLog, 1)) <>'/'ANDCHARINDEX('/', @BackupPathLog) >0--Has to end in a '/'
378
373
BEGIN
379
374
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @BackupPathLog to add a "/"', 0, 1) WITHNOWAIT;
380
375
SET @BackupPathLog +=N'/';
381
376
END;
377
+
IF (SELECTRIGHT(@BackupPathLog, 1)) <>'\'--Has to end in a '\'
378
+
BEGIN
379
+
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @BackupPathLog to add a "\"', 0, 1) WITHNOWAIT;
380
+
SET @BackupPathLog +=N'\';
381
+
END;
382
382
/*Move Data File*/
383
383
IFNULLIF(@MoveDataDrive, '') ISNULL
384
384
BEGIN
385
385
IF @Execute ='Y'OR @Debug =1RAISERROR('Getting default data drive for @MoveDataDrive', 0, 1) WITHNOWAIT;
386
386
SET @MoveDataDrive =CAST(SERVERPROPERTY('InstanceDefaultDataPath') ASnvarchar(260));
387
387
END;
388
-
IF (SELECTRIGHT(@MoveDataDrive, 1)) <>'\'ANDCHARINDEX('\', @MoveDataDrive) >0--Has to end in a '\'
389
-
BEGIN
390
-
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @MoveDataDrive to add a "\"', 0, 1) WITHNOWAIT;
391
-
SET @MoveDataDrive +=N'\';
392
-
END;
393
-
ELSEIF (SELECTRIGHT(@MoveDataDrive, 1)) <>'/'ANDCHARINDEX('/', @MoveDataDrive) >0--Has to end in a '/'
388
+
IF (SELECTRIGHT(@MoveDataDrive, 1)) <>'/'ANDCHARINDEX('/', @MoveDataDrive) >0--Has to end in a '/'
394
389
BEGIN
395
390
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @MoveDataDrive to add a "/"', 0, 1) WITHNOWAIT;
396
391
SET @MoveDataDrive +=N'/';
397
392
END;
393
+
ELSEIF (SELECTRIGHT(@MoveDataDrive, 1)) <>'\'--Has to end in a '\'
394
+
BEGIN
395
+
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @MoveDataDrive to add a "\"', 0, 1) WITHNOWAIT;
396
+
SET @MoveDataDrive +=N'\';
397
+
END;
398
398
/*Move Log File*/
399
399
IFNULLIF(@MoveLogDrive, '') ISNULL
400
400
BEGIN
401
401
IF @Execute ='Y'OR @Debug =1RAISERROR('Getting default log drive for @MoveLogDrive', 0, 1) WITHNOWAIT;
402
402
SET @MoveLogDrive =CAST(SERVERPROPERTY('InstanceDefaultLogPath') ASnvarchar(260));
403
403
END;
404
-
IF (SELECTRIGHT(@MoveLogDrive, 1)) <>'\'ANDCHARINDEX('\', @MoveLogDrive) >0--Has to end in a '\'
405
-
BEGIN
406
-
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @MoveLogDrive to add a "\"', 0, 1) WITHNOWAIT;
407
-
SET @MoveLogDrive +=N'\';
408
-
END;
409
-
ELSEIF (SELECTRIGHT(@MoveLogDrive, 1)) <>'/'ANDCHARINDEX('/', @MoveLogDrive) >0--Has to end in a '/'
404
+
IF (SELECTRIGHT(@MoveLogDrive, 1)) <>'/'ANDCHARINDEX('/', @MoveLogDrive) >0--Has to end in a '/'
410
405
BEGIN
411
406
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing@MoveLogDrive to add a "/"', 0, 1) WITHNOWAIT;
412
407
SET @MoveLogDrive +=N'/';
413
408
END;
409
+
ELSEIF (SELECTRIGHT(@MoveLogDrive, 1)) <>'\'--Has to end in a '\'
410
+
BEGIN
411
+
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @MoveLogDrive to add a "\"', 0, 1) WITHNOWAIT;
412
+
SET @MoveLogDrive +=N'\';
413
+
END;
414
414
/*Move Filestream File*/
415
415
IFNULLIF(@MoveFilestreamDrive, '') ISNULL
416
416
BEGIN
417
417
IF @Execute ='Y'OR @Debug =1RAISERROR('Setting default data drive for @MoveFilestreamDrive', 0, 1) WITHNOWAIT;
418
418
SET @MoveFilestreamDrive =CAST(SERVERPROPERTY('InstanceDefaultDataPath') ASnvarchar(260));
419
419
END;
420
-
IF (SELECTRIGHT(@MoveFilestreamDrive, 1)) <>'\'ANDCHARINDEX('\', @MoveFilestreamDrive) >0--Has to end in a '\'
421
-
BEGIN
422
-
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @MoveFilestreamDrive to add a "\"', 0, 1) WITHNOWAIT;
423
-
SET @MoveFilestreamDrive +=N'\';
424
-
END;
425
-
ELSEIF (SELECTRIGHT(@MoveFilestreamDrive, 1)) <>'/'ANDCHARINDEX('/', @MoveFilestreamDrive) >0--Has to end in a '/'
420
+
IF (SELECTRIGHT(@MoveFilestreamDrive, 1)) <>'/'ANDCHARINDEX('/', @MoveFilestreamDrive) >0--Has to end in a '/'
426
421
BEGIN
427
422
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @MoveFilestreamDrive to add a "/"', 0, 1) WITHNOWAIT;
428
423
SET @MoveFilestreamDrive +=N'/';
429
424
END;
425
+
ELSEIF (SELECTRIGHT(@MoveFilestreamDrive, 1)) <>'\'--Has to end in a '\'
426
+
BEGIN
427
+
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @MoveFilestreamDrive to add a "\"', 0, 1) WITHNOWAIT;
428
+
SET @MoveFilestreamDrive +=N'\';
429
+
END;
430
430
/*Move FullText Catalog File*/
431
431
IFNULLIF(@MoveFullTextCatalogDrive, '') ISNULL
432
432
BEGIN
433
433
IF @Execute ='Y'OR @Debug =1RAISERROR('Setting default data drive for @MoveFullTextCatalogDrive', 0, 1) WITHNOWAIT;
434
434
SET @MoveFullTextCatalogDrive =CAST(SERVERPROPERTY('InstanceDefaultDataPath') ASnvarchar(260));
435
435
END;
436
-
IF (SELECTRIGHT(@MoveFullTextCatalogDrive, 1)) <>'\'ANDCHARINDEX('\', @MoveFullTextCatalogDrive) >0--Has to end in a '\'
437
-
BEGIN
438
-
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @MoveFullTextCatalogDrive to add a "\"', 0, 1) WITHNOWAIT;
439
-
SET @MoveFullTextCatalogDrive +=N'\';
440
-
END;
441
-
ELSEIF (SELECTRIGHT(@MoveFullTextCatalogDrive, 1)) <>'/'ANDCHARINDEX('/', @MoveFullTextCatalogDrive) >0--Has to end in a '/'
436
+
IF (SELECTRIGHT(@MoveFullTextCatalogDrive, 1)) <>'/'ANDCHARINDEX('/', @MoveFullTextCatalogDrive) >0--Has to end in a '/'
442
437
BEGIN
443
438
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @MoveFullTextCatalogDrive to add a "/"', 0, 1) WITHNOWAIT;
444
439
SET @MoveFullTextCatalogDrive +=N'/';
445
440
END;
446
-
/*Standby Undo File*/
447
-
IF (SELECTRIGHT(@StandbyUndoPath, 1)) <>'\'ANDCHARINDEX('\', @StandbyUndoPath) >0--Has to end in a '\'
441
+
IF (SELECTRIGHT(@MoveFullTextCatalogDrive, 1)) <>'\'--Has to end in a '\'
448
442
BEGIN
449
-
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @StandbyUndoPath to add a "\"', 0, 1) WITHNOWAIT;
450
-
SET @StandbyUndoPath+=N'\';
443
+
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @MoveFullTextCatalogDrive to add a "\"', 0, 1) WITHNOWAIT;
444
+
SET @MoveFullTextCatalogDrive+=N'\';
451
445
END;
452
-
ELSEIF (SELECTRIGHT(@StandbyUndoPath, 1)) <>'/'ANDCHARINDEX('/', @StandbyUndoPath) >0--Has to end in a '/'
446
+
/*Standby Undo File*/
447
+
IF (SELECTRIGHT(@StandbyUndoPath, 1)) <>'/'ANDCHARINDEX('/', @StandbyUndoPath) >0--Has to end in a '/'
453
448
BEGIN
454
449
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @StandbyUndoPath to add a "/"', 0, 1) WITHNOWAIT;
455
450
SET @StandbyUndoPath +=N'/';
456
451
END;
452
+
IF (SELECTRIGHT(@StandbyUndoPath, 1)) <>'\'--Has to end in a '\'
453
+
BEGIN
454
+
IF @Execute ='Y'OR @Debug =1RAISERROR('Fixing @StandbyUndoPath to add a "\"', 0, 1) WITHNOWAIT;
455
+
SET @StandbyUndoPath +=N'\';
456
+
END;
457
457
458
458
IF @RestoreDatabaseName ISNULLOR @RestoreDatabaseName LIKEN''/*use LIKE instead of =, otherwise N'' = N' '. See: https://www.brentozar.com/archive/2017/04/surprising-behavior-trailing-spaces/ */
0 commit comments