The database cannot be restored. solution:
During the Restore database operation, you may be prompted that you cannot obtain the exclusive access to the database because the database is in use !!
In this case, you must first kill the threads that are using the database before restoring the database.
1. First, locate the master database
2. Run the following statement:
As shown in the following figure, the thread that is using the 'jjq' database is killed:
Declare @ dbname varchar (20)
Set @ dbname = 'jcjq'
Declare @ SQL nvarchar (500)
Declare @ spid int -- The spid value is a unique integer assigned to the connection when the user connects.
Set @ SQL = 'Clare getspid cursor
Select spid from sysprocesses where dbid = db_id (''' + @ dbname + ''')'
Exec (@ SQL)
Open getspid
Fetch next from getspid into @ spid
While @ fetch_status <>-1 -- if the fetch statement does not fail to be executed or this row is not in the result set.
Begin
Exec ('Kill '+ @ spid) -- terminate a normal connection
Fetch next from getspid into @ spid
End
Close getspid
Deallocate getspid