Server.DetachedDatabaseInfo(String) Server.DetachedDatabaseInfo(String) Server.DetachedDatabaseInfo(String) Method

Definition

Returns information about a detached database file.

public:
 System::Data::DataTable ^ DetachedDatabaseInfo(System::String ^ mdfName);
public System.Data.DataTable DetachedDatabaseInfo (string mdfName);
Public Function DetachedDatabaseInfo (mdfName As String) As DataTable
Parameters
mdfName
String String String

A String value that specifies the detached database file.

Returns

A DataTable system object value that contains a list of information about a detached database file. The table describes the different columns of the returned DataTable.

Column
Data type
Description
DatabaseName
String The name of the database.
DatabaseVersion
String The version of the database.
Collation
String The number of the collation that is used with the database.

Examples

Visual Basic

'Connect to the local, default instance of SQL Server.  
Dim srv As Server  
srv = New Server  
Dim owner As String  
Dim logstr as String  
Dim datastr as String  
owner = srv.Databases("AdventureWorks2012").Owner  

'Detach the AdventureWorks2012 database.  
srv.DetachDatabase("AdventureWorks2012", False, False)  

'Display information about the detached database.  
Dim d As DataTable  
Datastr = "C:\Program Files\Microsoft SQL Server"  
Datastr = datastr + "\MSSQL10_50\MSSQL\Data\AdventureWorks2012_Data.mdf"  
Logstr = "C:\Program Files\Microsoft SQL Server"  
Logstr = datastr + "\MSSQL10_50\MSSQL\Data\AdventureWorks2012_Log.ldf"  
d = srv.DetachedDatabaseInfo(datastr)  
Dim r As DataRow  
Dim c As DataColumn  
For Each r In d.Rows  
    Console.WriteLine("==========================")  
    For Each c In r.Table.Columns  
        Console.WriteLine(c.ColumnName + " = " + r[c].ToString)  
    Next  
Next  

'Check whether the file is a detached primary file.  
Console.WriteLine(srv.IsDetachedPrimaryFile(datastr))  

'Attach the database  
Dim sc As StringCollection  
sc = New StringCollection  
sc.Add(datastr)  
sc.Add(logstr)  
srv.AttachDatabase("AdventureWorks2012", sc, owner, AttachOptions.None)  

PowerShell

$srv = new-object Microsoft.SqlServer.Management.Smo.Server("(local)")  
$db = New-Object Microsoft.SqlServer.Management.Smo.Database  
$db = $srv.Databases.Item("AdventureWorks2012")  
$owner = $db.Owner  
$srv.DetachDatabase("AdventureWorks2012", $FALSE, $FALSE)  
$datastr = "C:\Program Files\Microsoft SQL Server"  
$datastr = $datastr + "\MSSQL10_50\MSSQL\Data\AdventureWorks2012_Data.mdf"  
$logstr = "C:\Program Files\Microsoft SQL Server"  
$logstr = $logstr + "\MSSQL10_50\MSSQL\Data\AdventureWorks2012_Log.ldf"  
$d = $srv.DetachedDatabaseInfo($datastr)  
foreach ($r in $d.Rows)  
{  
   Write-Host "=========================="  
   Foreach ($c in $d.Columns)  
   {  
      Write-Host $c.ColumnName "=" $r[$c].ToString()  
   }  
}  
Write-Host $srv.IsDetachedPrimaryFile($datastr)  
$sc = new-object Systems.Collections.Specialized.StringCollection  
$sc.Add($datastr)  
$sc.Add($logstr)  
$srv.AttachDatabase("AdventureWorks2012", $sc, $owner, [Microsoft.SqlServer.Management.Smo.AttachOptions]::None)  

Applies to

See Also