Permissions of Database Object Owners

A user who creates a database object (a table, view, or stored procedure) is its owner and is automatically granted all object permissions on it. Users other than the object owner, including the owner of the database, are automatically denied all permissions on that object unless explicitly allowed by the owner.

Object permissions are granted on the statements SELECT, UPDATE, INSERT, DELETE, REFERENCE, and EXECUTE.

As an example, say that Mary is the owner of the pubs database and has granted Joe permission to create tables in it. Joe creates the table authors; he is the owner of this database object.

Initially, object permissions on authors belong to Joe. Joe can grant object permissions for this table to other users, including Mary, the database owner. (Note, however, that the database owner can use the SETUSER statement to impersonate Joe.)

These statement permissions default to the owner of a table and cannot be transferred to other users:

Permission to use the GRANT and REVOKE statements cannot be transferred.

Permission to drop an object – a table, view, index, stored procedure, rule, or default – defaults to its owner and cannot be transferred. Since there is no command to transfer ownership of objects, if you will be dropping the username, you must first drop the objects.