Half-and-half solution
1) Only DBA can change data structures, stored procs etc....
2) Only users can access database via production GUI ( DBA is prevented from
this via encrypted password that user creates )
3) Even that DBA has access to every object in DB could not enter a finacial
transaction without a complete understanding of the schema.
( This is for an accounting solution )