Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Verifies whether the specified file is a primary (.mdf) database file.
Namespace: Microsoft.SqlServer.Management.Smo
Assembly: Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)
Syntax
'Declaration
Public Function IsDetachedPrimaryFile ( _
mdfName As String _
) As Boolean
'Usage
Dim instance As Server
Dim mdfName As String
Dim returnValue As Boolean
returnValue = instance.IsDetachedPrimaryFile(mdfName)
public bool IsDetachedPrimaryFile(
string mdfName
)
public:
bool IsDetachedPrimaryFile(
String^ mdfName
)
member IsDetachedPrimaryFile :
mdfName:string -> bool
public function IsDetachedPrimaryFile(
mdfName : String
) : boolean
Parameters
- mdfName
Type: System.String
A String value that specifies the name of the data file.
Return Value
Type: System.Boolean
A Boolean value that specifies whether the data file is a primary database file.If True, the data file is a primary database file.If False, the data file is not a primary database file.
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)
See Also
Reference
Microsoft.SqlServer.Management.Smo Namespace