SQL یک زبان غیر رویه‌ای (non procedural) می‌باشد. یعنی از طریق SQL انجام Query و تغییرات در بانک‌های اطلاعاتی انجام می‌شود بدون این که کاربر چگونگی انجام کار را برای SQL مشخص نماید. 
در SQL امکان تعریف تابع، شرط و حلقه وجود ندارد. برای حل این مشکل، Oracle از بسط یافتن زبان SQL به نام PL/SQL استفاده می‌کند. 

در نگاه کلی به SQL، دستورات آن به ۵ گروه زیر تقسیم می‌شوند: 

  1. (Data Manipulate Language (DML: برای جستجو و یا تغییر داده‌ها
  2. (Data Definition Language (DDL: برای تعریف ساختار بانک‌اطلاعاتی
  3. (Data Control Language (DCL: برای تعریف سطح دسترسی کاربران به بانک‌اطلاعاتی
  4. (Data Query Language (DQL: برای بازیابی اطلاعات
  5. (Transaction Control Language (TCL: برای کنترل تراکنش‌ها


دستورات DML به 4 دسته زیر تقسیم می شوند:

  1. Insert: افزودن رکوردهای جدید به یک جدول
  2. Update: تغییر رکوردهای موجود یک جدول
  3. Delete: حذف رکوردهای موجود یک جدول
  4. Merge: درج رکورد جدید و یا تغییر رکوردهای موجود

توجه: دستورات DML و DQL اغلب برای برنامه نویسان اوراکل و دستورات TCL، DDL و DCL برای مدیران و طراحان بانک‌اطلاعاتی مورد استفاده قرار می‌گیرد.

دستور SELECT
یکی از دستورات بسیار مهم، دستور SELECT می باشد. SELECT نسبت به دستورات دیگر کاربرد بیشتری دارد چون تنها ابزار برای مشاهده رکوردهای یک جدول، رکوردهای جداول Data Dictionary و اشیاء ذخیره شده در آن می باشد. دستور SELECT در حالت کلی به صورت زیر می باشد:

SELECT [DISTINCT] {*, column [alias], …} FROM table;

DISTINCT
عدم نمایش مقادیر تکراری یک ستون

- *: نمایش تمامی ستون های یک جدول

- column: ستونی که برای نمایش مقادیر آن انتخاب می شود. 

- table: نام جدولی که رکوردهای از آن انتخاب می شود.

شکل های دیگر استفاده از دستور SELECT

ساخت جدول
جهت ساخت جدول از دستور CREAT TABLE و به صورت زیر استفاده می نماییم:

PERSON: نام جدول

ID: نام ستون اول از نوع عددی

NAME: نام ستون دوم از نوع رشته ای

NUMBER: نام ستون سوم از نوع عددی


دستور INSERT

نکته: اگر بلافاصله بعد از افزودن رکوردهای مورد نظر به جدول PERSON، از محیط SQLPLUS (همان Command prompt) خارج شوید و مجدداً بازگردید و دستور SELECT را اجرا کنید، خواهید دید که هیچ یک از رکوردهای افزوده شده، در جدول PERSON ذخیره نشده اند. 

این امر به این خاطر است که با خارج شدن از محیط SQLPLUS، اوراکل تمامی تراکنش ها را Rollback می کند. برای جلوگیری از این موضوع و ذخیره شدن رکوردهای افزوده شده به جدول، می بایست پس از افزودن رکورد ها و قبل از خروج از محیط SQLPLUS دستور COMMIT را اجرا نمایید. 

نکته: در هنگام استفاده از دستور CREATE نیازی به استفاده از دستور COMMIT نیست. 

دستور UPDATE

دستور DELETE