0

データベースの名前を変更して、次のようなクエリを試す必要があります

ALTER DATABASE Test MODIFY NAME = NewTest

しかし、これはエラーをスローします

    Msg 5030, Level 16, State 2, Line 1
The database could not be exclusively locked to perform the operation.

誰かが私に何か提案をすることができますか?

4

3 に答える 3

2

次のようなものを試してください。

USE master
GO
ALTER DATABASE Test 
SET SINGLE_USER 
WITH ROLLBACK IMMEDIATE
GO
ALTER DATABASE Test MODIFY NAME = NewTest
GO
ALTER DATABASE NewTest
SET MULTI_USER 
GO

ただし、これによってハードドライブ上の物理ファイルの名前が変更されない場合があることに注意してください。

于 2013-02-15T05:01:23.193 に答える
0

調査する必要があることがいくつかあります。このエラーが発生する理由は、次の1つ以上が原因である可能性があります。

  1. 使用しているアカウントには、コマンドを実行する権限がありません
  2. DBは別のプロセス/ユーザーによってロックされています
  3. データベースには、読み取り専用のファイルグループが含まれています

シングルユーザーモードで2をチェックするように強制することができます。

ALTER DATABASE SINGLE_USER ROLLBACK IMMEDIATE.

これにより、DBへの同時接続がすべて切断され、2番目を除外できるようになります。

于 2013-02-15T04:51:32.213 に答える
0

2つのオプションがあります。

  1. OMG修道院が提案するように、すべての接続を探して殺します
  2. ここで説明されているように、データベースをシングルサーバーモードで開きます: http ://technet.microsoft.com/en-us/library/ms345598(v = sql.105).aspx
于 2013-02-15T04:53:54.600 に答える