Hi All,
a bit mysterious
I recently set up a new SQL-Server, same OS and SQL-Versions like the old one: Win2008R2-64, Sql 2008R2-64, same patchlevel.
Same xp_ndo_x64.dll, same startup flags.
I restored a sql backup of a NAV-5 DB from the old one on the new server.
For a couple auf days, everything worked fine.
Then we got a new Object-Range and i created a new NAV-License file in VOICE. And I'm pretty shure, I claimed the ISV insert right.
From the time I've uploaded the new license file on the new server, some of the developers - all without dbo or sysadmin rights -cant create new fields in tables, they got this SQL error message:
1088,"42000", ... Cannot find the object ... or you do not have permissions.
SQL:
ALTER TABLE "XXXX.dbo.YYY$zzzz ADD xxxx DECIMAL ....
I restored the old license file, but same Error.
Same user on the old server, no problem.
Upload new license file on old server, no problem.
The users rights on both servers are exacly the same. (Server Logins, DB users, roles)
The only difference, that can be seen, is in SQL management studio, Database properties, permissions, Effective user rights:
On the old server, it shows lots of ALTER rights, on the new one only CONNECT, DELETE, INSERT, SELECT and VIEW DB STATE.
What else may have influence on these effective rights?
Comments
To be more restrictive, you need ddladmin rights to alter the database definitions, like adding new fields.
http://mibuso.com/blogs/davidmachanick/