Transactions and Priviledges

Today I learned a lot of little details about transactions and privileges. However I am still behind in my studies of these topics. I just about get half of the review questions wrong on these topics. But I will share those things I do know here.

You are free to omit the word "FROM" in a DELETE statement. Therefore "DELETE FROM mytable" and "DELETE mytable" are equivalent. How unusual.

I knew a little about the TRUNCATE command before. It removes records from a table quickly without generating undo. It also prevents delete triggers from firing. Here is the big deal. TRUNCATE, like all other DDL, causes the current transaction to COMMIT. Be careful.

Now let's move on to privileges. You can GRANT privileges at the column level. However you can only revoke them at the table level. Also you cannot rely on role based privileges to set security for stored SQL (such as packages and/or procedures). These privileges must be granted directly to the user.