• Performance might be an issue, but this solution is great when security is an issue.  It is very easy to grant execution rights to a sproc, and then block the Select command.

    See http://www.novicksoftware.com/Articles/crud-operations-using-sql-server-stored-procedures-part-1.htm about application roles.