When working in a database, it is required to have sufficient permissions to access your data.
Some places like to lock down the permissions air tight.
No access to nothing.
And some places leave the door wide open and you can do what you like, although this is quite rare.
I would say most places are fairly conservative in their data lockdown approach, even for developers.
They take the approach that if you need access to something, they will grant it, so you can do your job.
Just the tables, functions, stored procedures and views that you need access too, nothing more.
So sometimes when troubleshooting a production issue, you spend more time asking for rights and permissions, even on the dev server, than the amount of time it takes to debug the code.
Working with data for a long time, I can see how the DBAs are concerned with protecting the data.
However, if the lack of permissions hinders me from doing my job, I believe that's an issue.
On a side note, I had a chance to attend a local SQL Server User Group last night, and I have to say the DBAs are ver knowledgable people. They take pride in their work and do a great job.
And what you will soon realize after spending time with DBAs is this, they don't like developers, period!
And perhaps that is why us developers have such a hard time getting permissions granted.
Maybe we are treading to close on their turf. Maybe its a control thing. Maybe they just don't like us.
Lastly, when there's a bug in production and I'm tasked with solving it, it takes me about 5 minutes to step through the code and find the culprit after pleading for a few hours to get sufficient permissions to the server, database, table, etc.
And that's just not right.