How can I protect my PL/SQL source code ?

PL/SQL V2.2, available with Oracle7.2, implements a binary wrapper for PL/SQL programs to protect the source code.This is done via a standalone utility that transforms the PL/SQL source code into portable binary object code (somewhat larger than the original).This way you can distribute software without having to worry about exposing your proprietary algorithms and methods.SQL*Plus and SQL*DBA will still understand and know how to execute such scripts.Just be careful, there is no "decode" command available. The syntax is: wrap iname=myscript.sql oname=xxxx.yyy .

What is the difference between a procedure and a function ?

Functions return a single variable by value whereas procedures do not return any variable by value.Rather they return multiple variables by passing variables by reference through their OUT parameter.

What is Over Loading and what are its restrictions?

OverLoading means an object performing different functions depending upon the no.of parameters or the data type of the parameters passed to it.

What are mutating triggers ?

A trigger giving a SELECT on the table on which the trigger is written.

What is the use of Data Dictionary ?

It Used by Oracle to store information about various physical and logical Oracle structures e.g.Tables, Tablespaces, datafiles, etc.