1. Yêu cầu :
Đổi tên Database trong SQL SQL Server
2. Vấn đề :
Khi thực hiện đổi tên 1 db, có thể bạn sẽ gặp lỗi sau :
The database could not be exclusively locked to perform the operation. (Microsoft SQL Server, Error: 5030)
Lỗi này thường xảy ra khi db của bạn ở chế độ MULTI_USER và có user đang truy cập hoặc có đối tượng nào đó đang tham chiếu đến nó.
3. Cách giải quyết :
Trước tiên thiết đặt db về chế độ SINGLE_USER, sau đó đổi tên db, cuối cùng đặt lại nó về chế độ MULTI_USER.
( Chế độ SINGLE_USER sẽ quy định tại một thời điểm chỉ một user có thể truy cập db và thường được sử dụng cho thao tác maintenance. Nếu user khác kết nối đến db tại thời điểm bạn thiết đặt database về chế độ SINGLE_USER thì các kết nối đó sẽ bị đóng mà không bị cảnh báo gì. )
3.1 Đổi tên db sử dụng SQL Server Management Studio
* Thiết đặt db về chế độ SINGLE_USER :
– Trong cửa sổ Object Explorer, click chuột phải vào db cần thiết đặt, chọn Properties
– Trong cửa sổ Database Properties, chọn mục Options trong phần Select a page
– Tìm đến option Retrict Access, chọn giá trị SINGLE_USER, sau đó ấn nút OK
– Nếu có user khác đang kết nối đến db thì sẽ xuất hiện hộp thoại Open Connections. Để đồng ý thay đổi chế độ và đóng các kết nối khác, ấn Yes
* Đổi tên db
– Trong cửa sổ Object Explorer, click chuột phải vào db cần thiết đặt, chọn Rename
– Gõ tên mới cho db, ấn Enter
* Thiết đặt db về lại chế độ MULTI_USER :
– Thực hiện thao tác tương tự như với việc thiết đặt chế độ SINGLE_USER, đặt giá trị Restrict Access là MULTI_USER