I was browsing around Yahoo Answers and I started to answer a question about Jobs in SQL and Oracle.
It was interesting to me, so I decided to repost the answer here and elaborate a bit.
Here is the question:
What is difference between oracle and SQL I want to know about . . . ?
which type of jobs are available on oracle course and Sql
I had to interpret quite a bit about what they were wanting to know, so here is my attempt.
Oracle is a relational database. There are other relational databases out there, like Microsoft SQL Server, MySQL, DB2, etc.
All of these relational databases use SQL to put data into and take data out of the relational databases.
Then, they have their own “programming” languages.
Oracle has their PL/SQL language that you use to write stored procedures and functions.
Microsoft SQL Server has their TSQL language that you use to write stored procedures and functions.
So now that we have defined some of the terms, what jobs are available?
An Oracle DBA (Database Administrator) would take care of database instances and make sure they keep running, they don’t run out of space, they are secure, they have redundancy where needed, and stuff along that line. They have traditionally been paid a bit more than a Microsoft SQL Server DBA. But, Oracle has many different “levers” you can pull to tune it, so their is quite a bit to learn to be a real good Oracle DBA.
An Oracle Developer would most likely need to learn PL/SQL. PL/SQL allows you to write functions and stored procedures that end up as objects on the Oracle server. You would also need to know basic SQL in order to be effective. Basic SQL would include SELECT, INSERT, UPDATE, DELETE statements that allow you to put data into the database and get data out.
So the jobs would be Oracle DBA (takes a bit of experience unless you work as a Junior DBA under a Senior DBA.), Oracle Developer (this is the PL/SQL side), and then a regular developer that would work in .Net or Java.
The regular developer position would write programs that interface with the Oracle database, but you would use the .Net (C#/VB.Net) or Java along with SQL to interact with the database.
There are so many different positions I have seen throughout my years in IT.
Once you start a position, the lines end up getting blurred quite a bit. You have your main responsibility, but you will end up crossing over and doing some scripting or programming.
Take a DBA for example:
They have the responsibility to make sure the database stays up and running and secure. But, in order to do their job efficiently, they will most likely write some scripts that recompile indexes on some interval, or the script with defragment the disk, or check for errors in the logs. They definitely need to know SQL in order to create and recompile objects.
DBA’s will also need to do some performance tuning of queries. But, this job is also a developer’s job, so it crosses over and many times will need to be a collaborative effort.
So you can see that a DBA’s job has already crossed over to a Developer’s a little bit.
I’m going to cut it off there, but I could keep going on all day.
Let me know what you have experienced working in (or with) the IT industry but posting to the comments below. Or, if you have some more questions please post them too.