چند روز پیش هنگامی که قصد داشتم برای یک دیتابیس در SQL Server 2005 دیاگرام رسم کنم، با یک خطا روبرو شدم.
خطای به وجود آمده شامل جمله ای با محتوای Database does not have a valid owner بود.
متن کامل خطای به وجود آمده را در قسمت زیر مشاهده می نمایید.
Database diagram support objects cannot be installed because this database does not have a valid owner. To continue, first use the Files page of the Database Properties dialog box or the ALTER AUTHORIZATION statement to set the database owner to a valid login, then add the database diagram support objects.
هنگام جستجو در اینترنت، با دو راه حل مواجه شدم.
راه حل اول:
In SQL Server Management Studio do the following:
- Right Click on your database, choose properties
- Goto the Options Page
- In the Dropdown at right labeled "Compatibility Level" choose "SQL Server 2005(90)"
ضمنا جایی خواندم که این مشکل برای SQL Express نیز ممکن است به وجود آید. برای رفع این مشکل باید دیتابیس مربوطه را به Management Studio الحاق (Attach) نموده و دستور زیر را اجرا نمایید. (در قطعه کد زیر ما Owner را به sa تغییر داده ایم)
راه حل دوم:
USE [<DatabaseName>]
GO
EXEC dbo.sp_changedbowner @loginame = N'sa', @map = false
GO
لازم به ذکر است که ظاهرا هر دو راه حل بالا عملی بوده و لذا هنگام برخورد با این مشکل می توانید از هر کدام از آن ها استفاده نمایید.