İlişkisel veri tabanı yönetim sistemleri (RDBS) modeli ilk önce 1970 yılında Dr.E.F. Codd tarafından tarif edilmiştir. SQL veya Structured English Query Language (SEQUEL), IBM firması tarafından Codd’un modeli kullanılmak için geliştirilmiştir. SEQUEL sonraları SQL olmuştur. 1979 yılında, Relational Software ,SQL’in ilk ticari uygulamasını geliştirmiştir. Bugün SQL, ilişkisel veri tabanı yönetim sistemleri standartı olarak kabul edilmektedir.
SQL, ilişkisel veri tabanlarındaki bilgileri sorgulamak için kullanılan bir dildir. SQL, tüm kullanıcıların ve uygulamaların veri tabanına erişmek için kullandıkları komutlar bütünüdür. Uygulama programları ve veri tabanı araçları kullanıcılara çoğu durumda SQL kullanmadan veri tabanına erişim imkanını sunmaktadırlar fakat bu uygulamalarda geri planda SQL kullnmaktadırlar.
Oracle SQL’I, standartlara uygundur. Daha da ötesinde, Oracle,SQL standartlarının gelişmesinde motor güç olan bir kurumdur. American National Standarts Institue (ANSI) ve International Standarts Organization (ISO) tarafından belirlenen son SQL standartı, SQL-92’dir. SQL-92’de üç aşamalı uygunluk vardır,
· İlk seviye (Entry Level)
. Orta seviye (Intermediate Level)
· İleri seviyedir (Full Level)
SQL, ilişkisel veri tabanları ile uygulamaların diyaloğunu sağlamaktadır. SQL temelde verilerle mantıksal seviyede çalışmaktadır. Yani, bir tablodan birkaç kayıt seçebilmek için, o kayıtları seçebilecek bir koşul belirtilir. Koşula uyan tüm kayıtlar bir basamakta gelir ve bunlar kullnıcıya gösterilebildiği gibi, bir başka SQL’e veya uygulamaya da gönderilebilir. Kayıtların tek tek nasıl geldiği ve fiziksel olarak veri tabanının neresinde ve nasıl tutulduğu ile SQL ilgilenmektedir.
· Veri sorgulama
· Bir tabloya kayıt ekleme, değiştirme ve silme
· Veri tabanı nesneleri (database objects) yaratma, değiştirme ve silme
· Veri tabanına ve nesnelerine erişimi kontrol etme
· Veri tabanı bütünlüğünü ve tutarlılığını sağlama işlemleri yapılabilmektedir.
SQL komutları bir veya daha fazla satır olbilmektedir. SQL cümlelerinin sonuna noktalı virgül (;) konmaktadır. Birden fazla satır olan komutlarda en son satırın sonuna “ / ” işareti isteğe bağlı olarak konabilmektedir. PL/SQL , Oracle’in SQL komutlarına yapısal dillere AİT özellikleri (begin, end, loop, for, if, elsif, vb.) eklediği kendi standardı olan bir dildir. SQL*Plus, SQL ve PL/SQL komutlarının kullanılabildiği Oracle ürünüdür.
Bir tablo oluştururken her sütunun; bir yordam veya fonksiyon oluştururken de her argümanın veri tipi olmak zorundadır. Bu veri tipleri o alana girilecek veriyi veya o yordamda kullanılacak argümanı sınırlandırır. Bu veri tipleri şunlardır:
· CHAR(sayı)
· DATE
· MSLABEL
· NUMBER (tam,ondalık)
· VARCHAR2 (sayı)
· LONG
· LONG RAW
· RAW (sayı)
· ROWID