Kullanıcı(User) = Oracle veri tabanında giriş yapan (login olan) bir kişidir.
Şema(Schema) = Oracle veri tabanında giriş yapan kullanıcının oluşturduğu nesnelerdir. Doğal olarak sahipliğinide almıştır artık bu nesnenin.
Schema ve Tablespace arasında bir bağlantı yoktur. Aynı schemadaki nesneler farklı Tablespacelerde bulunabileceği gibi Tablespacelerde farklı schemalara ait objeler bulunabilir. (Tablespace nedir ? için ayrıca bir yazı paylaşacağım).
Başlıca şema nesneleri aşağıdaki gibidir.
- Table : Oracle veri tabanında en temel veri saklama birimidir. Kolonlar ve satırlardan oluşur. Kullanıcılar tarafından ulaşılabilecek tüm veriyi barındırırlar.
- Index : Indeks’ler tablolarla ilişkilendirilen opsiyonel yapılardır. Data erişim performansını arttırmak için yaratılırlar. Bir oracle indeksi tablo verisine direk erişim yolu sağlar.
- View : Bir veya birden fazlada tabloda bulunan verinin özelleştirilmiş bir gösterim şeklidir. Bir view aynı zamanda saklanmış bir sorgu olarak da değerlendirilebilir
Örneğin
Veri tabanına Ali isminde bir kullanıcı giriş yaptı.
MÜŞTERİ adında bir tablo oluşturdu.
Oracle bu tabloyu artık Ali’nin sahipliğine verdi.
Bu tablo oracle veri tabanında ALİ.MÜŞTERİ olarak duruyor artık.
Aşağıdaki gibi bir sorgu ile bu tabloyu çağırabiliriz.
Select * from ALİ.MÜŞTERİ;
Fakat Defne isminde bir veri tabanı kullanıcısı veri tabanına bağlandı.
Aynı sorguyu o çektiğinde tabloya erişemez.Çünkü bu tablo Ali isimli kullanıcının tablosudur. (Gerekli izinlerin verilmesi gerekli erişmesi için.)
ÖZETLE
Oracle veri tabanında user,schema,owner bunlar ALİ ‘dir. Yani 3’üde aynı şeydir.