As the subject said, Which part of the Oracle Architecture verifying the SQL Syntax? I need to know the deepest components. I am looking for answer deeper than just say SGA and go figure.
AFAIK his is all happens during parse phase and componnets which take part are from SGA like dict cache.
The Time has come ....
SQL syntax is verfied at the parse,execute and fetch process.When u submit a SQL query say for e.g
sql>select * from emp;
The above query is passed to the database server by the user process.At the server there is a process for each user connected(server process).This server process parses the query.During the parsing phase Oracle checks the syntax of the query,whether the user has appropriate priveleges to access the base tables of the query,the column priveleges on the tables,execution plan and creates a binary copy of the query and stores in shared pool(Library cache) .
Once the query is parsed it is executed .During the execution process Oracle server process fetches the datablocks from Oracle datafiles into the Database buffer cache by using the best execution plan it has determined during the parse phase.
And finally fetch will fetch the data from the server to the client(user process).Oracle will reduce your querytime if it finds the same sql query already parsed in the shared pool so it doesnot have to again parse it ,it can bypass this step and directly go to fetch,if it has the necessary datablocks in the buffer cache.
Rohit Nirkhe,Oracle DBA,OCP 8i
I'm a JOLE(JavaOracleLinuxEnthusiast)
--- Everything was meant to be
Click Here to Expand Forum to Full Width