Restore.ReadBackupHeader Method (Server)


Reads the backup header and returns information about the media contents.

Namespace:   Microsoft.SqlServer.Management.Smo
Assembly:  Microsoft.SqlServer.SmoExtended (in Microsoft.SqlServer.SmoExtended.dll)

public DataTable ReadBackupHeader(
	Server srv


Type: Microsoft.SqlServer.Management.Smo.Server

A Server object that represents the instance of SQL Server that provides access to the targeted media.

Return Value

Type: System.Data.DataTable

A DataTable object that specifies information about the media contents.

For information about the media contents, see, see RESTORE HEADERONLY (Transact-SQL).

The following code example demonstrates how to create a backup, associate it with an instance of the restore class, and use the ReadBackupHeader method to display information about the restore media contents.


Dim srv As Server = New Server()
Dim res As Restore = New Restore()
Dim backup As Backup = New Backup()
Dim dt As DataTable

backup.Devices.AddDevice("C:\AdventureWorks2012Backup.bak", DeviceType.File)
backup.Database = "AdventureWorks2012"
backup.Action = BackupActionType.Database
backup.Initialize = True

res.Devices.AddDevice("C:\AdventureWorks2012Backup.BAK", DeviceType.File)
dt = res.ReadBackupHeader(srv)

For Each r As DataRow In dt.Rows
   For Each c As DataColumn In dt.Columns
      Console.WriteLine(c.ToString + " = " + r(c).ToString())


$srv = new-object Microsoft.SqlServer.Management.Smo.Server("(local)")
$res = new-object Microsoft.SqlServer.Management.Smo.Restore
$backup = new-object Microsoft.SqlServer.Management.Smo.Backup

$backup.Devices.AddDevice("C:\AdventureWorks2012Backup.bak", [Microsoft.SqlServer.Management.Smo.DeviceType]::File)
$backup.Database = "AdventureWorks2012"
$backup.Action = [Microsoft.SqlServer.Management.Smo.BackupActionType]::Database
$backup.Initialize = $TRUE

$res.Devices.AddDevice("C:\AdventureWorks2012Backup.bak", [Microsoft.SqlServer.Management.Smo.DeviceType]::File)
$dt = $res.ReadBackupHeader($srv)

foreach($r in $dt.Rows)
   foreach ($c in $dt.Columns)
      Write-Host $c "=" $r[$c]
Return to top