문제

I am trying to compare two databases using Visual Studio 2012. However, the SQL instance where my database is being hosted is extremely locked down and my user does not have access to the VIEW DEFINITIONS permission.

I'm getting these errors in Visual Studio:

The target database schema could not be retrieved. The reverse engineering operation cannot continue because you do not have View Any Definition permission on the server '(URL here)'.

Comparing the master database requires VIEW ANY DEFINITION permission.

But yet, I can use tools like Red-Gate SQL Compare and XSQL to compare the databases. I don't want to purchase this software and I rather use Visual Studio 2012 because I already have a license... How can I overcome this problem? Is there any way I can use SQL Server Data Tools without VIEW ANY DEFINITION permission?

도움이 되었습니까?

해결책 3

Running a comparison at the database-level rather than the instance-level did the trick.

다른 팁

You need to give db_owner permission in SQL server to user as

SQL server
Security
Logins
Specific user
User mapping
Specific database
Check db_owner
OK

Oddly enough, restarting my Visual Studio fixed the issue for me.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top