次の方法で共有


Server.DetachDatabase Method (String, Boolean)

データベースがデタッチされる前に統計を更新するオプションを使用して、指定したデータベースを Microsoft SQL Server のインスタンスからデタッチします。

名前空間: Microsoft.SqlServer.Management.Smo
アセンブリ: Microsoft.SqlServer.Smo (microsoft.sqlserver.smo.dll 内)

構文

'宣言
Public Sub DetachDatabase ( _
    databaseName As String, _
    updateStatistics As Boolean _
)
public void DetachDatabase (
    string databaseName,
    bool updateStatistics
)
public:
void DetachDatabase (
    String^ databaseName, 
    bool updateStatistics
)
public void DetachDatabase (
    String databaseName, 
    boolean updateStatistics
)
public function DetachDatabase (
    databaseName : String, 
    updateStatistics : boolean
)

パラメータ

  • databaseName
    デタッチするデータベースの名前を示す String 値です。
  • updateStatistics
    デタッチする前にデータベースの統計を更新するかどうかを示す Boolean 値です。

    True の場合、統計が更新されます。

    False の場合、統計は更新されません。

解説

更新されたテキスト :

データベースのデータ ファイルおよびトランザクション ログ ファイルを、いったんデタッチして、SQL Server の同一または別のインスタンスに再度アタッチすることができます。同一のコンピュータにある別の SQL Server のインスタンスにデータベースを変更する場合や、データベースを移動する場合は、データベースをデタッチしてアタッチすると便利です。

この名前空間、クラス、またはメンバは、Microsoft .NET Framework Version 2.0 でのみサポートされています。

使用例

'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("AdventureWorks").Owner

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

'Display information about the detached database.
Dim d As DataTable
Datastr = "C:\Program Files\Microsoft SQL Server"
Datastr = datastr + "\MSSQL.1\MSSQL\Data\AdventureWorks_Data.mdf"
Logstr = "C:\Program Files\Microsoft SQL Server"
Logstr = datastr + "\MSSQL.1\MSSQL\Data\AdventureWorks_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("AdventureWorks", sc, owner, AttachOptions.None)

スレッド セーフ

この型の public static (Microsoft Visual Basic では共有 ) メンバは、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

開発プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

対象プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

参照

関連項目

Server Class
Server Members
Microsoft.SqlServer.Management.Smo Namespace

その他の技術情報

Visual Basic .NET でパラメータと SMO メソッドを使用する方法
データベースのデタッチとアタッチ
メソッドの呼び出し
サーバーの管理
[データベースのデタッチ] ([全般] ページ)

変更履歴

リリース

履歴

新しい内容 :
  • 「例」セクションにコード サンプルを追加しました。

  • 「解説」セクションに説明を追加しました。