Veritabanı Sistemleri Dersi 3. Ünite Sorularla Öğrenelim

İlişkisel Veritabanı Modeli

1. Soru

Veri tabanı modelinde İlişkisel Cebir işlemleri nelerdir?

Cevap

İlişkisel veritabanı modeli matematiğin iki dalı olan Küme teorisi ve birinci derece yüklem aritmetiğine dayanmaktadır. Modelin adı bile küme teorisindeki ilişki teriminden türetilmiştir.

İlişkisel örnekler (tablolar) üzerine yapılacak işlemleri öğrenmeden önce verilen ilişkisel örneklerden yeni ilişkisel örnekler oluşturulmasını sağlayan ilişkisel cebir hakkında bilgi sahibi olunmalıdır. İlişkisel cebirde tüm işlenen veriler ve sorguların sonuçları kümeler hâlinde ifade edilir. Geleneksel ilişkisel cebirde işlemler dört sınıfa toplanabilir.

  1. Tablolara uygulanılan genel küme işlemleri: birleşim (union, ?), kesişim (intersection, ?) ve fark (diference, -) işlemleridir.
  2. Bir tablodan parçalar getiren işlemler: seçim (selection, ?) bazı kayıtları elerken, yansıtma (projection, ?) bazı alanları eler.
  3. İki tablonun kayıtlarını bitiştiren işlemler: Kartezyen çarpım (Cross-product, x) birinci kümenin her satırı ikinci kümenin her bir satırıyla eşleşir.

Şartlı Bitişme (Conditional Join, ??) iki tablonun kartezyen çarpımı sonucundan verilen şarta uyan kayıtlar getirilir.

Kartezyen çarpımın getirdiğinden daha az çoklu kayıt içermesi daha verimli bir biçimde hesaplamayı sağlar. Gösterimde şart yerine ? sembolü kullanıldığı için Teta (Theta, ?) bitişmesi diye de adlandırılır.

Doğal bitişme (Natural Join, ?) her ortak alanda eşit bitişme yapılarak bulunur.

Bölme (Division, ÷) işlemi; eğer B tablosundaki y kümesi A tablosundaki bir x ile ilişkilendirilmişse ve A tablosundaki x ile ilişkili bir şekilde B tablosundaki tüm y’leri kapsıyorsa, bu x A÷B kümesi içerisindedir.

4) Yeniden adlandırma (Renaming, ?): tablolardaki kayıtları etkilemez ancak erişilen alanların veya tabloların adlarını kullanım sırasında değiştirir.


2. Soru

Veri tabanı modelinde Birleşim Cebir işlemleri nedir?

Cevap

Birleşim (?) Birleşim işlemi iki tablodaki tüm kayıtları getirir. Tekrar eden kayıtlar elenir. R ? S olarak gösterilir.


3. Soru

Veri tabanı modelinde kesişim Cebir işlemleri nedir?

Cevap

Kesişim (?) Kesişim işlemi iki tablonun ortak kayıtlarını getirir. R ? S ile gösterilir.


4. Soru

Veri tabanı modelinde Fark Cebir işlemleri nedir?

Cevap

Fark (-) Bu işlemde iki tablodan birincisinde olan ancak ikincisinde olmayan kayıtlar getirilir. R - S ile gösterilir.


6. Soru

Veri tabanı modelinde Seçim (?) Cebir işlemleri nedir?

Cevap

Seçim (?) Seçim işlemi verilen bir tablonun kayıtlarının alt kümesi olarak yeni bir tablo üretir. Getirilen alt küme verilen bir şarta göre seçilir. Seçim şartını gerçekleyen satırlar getirilir. Sonuç başka bir ilişkisel cebir işlemi için girdi olarak kullanılabilir. Örneğin: ? Cinsiyet=F (R)


7. Soru

Veri tabanı modelinde Kartezyen Çarpım (x) Cebir işlemleri nedir?

Cevap

Kartezyen Çarpım (x) İki tablonun alanlarının tüm olası eşleşmelerini getirir. Tablo1×Tablo2 ile gösterilir.


8. Soru

Veri tabanı modelinde Doğal Bitişme (?) Cebir işlemleri nedir?

Cevap

Doğal Bitişme (?) Bitişme işleminin özel bir durumudur. Bu bitişme işleminde sonuç iki tablonun eşit bitişmede tüm ortak alanlarının kullanılmasıyla bulunur. İki tablo arasında en az bir alan ortak ise uygulanabilir. Tablo1 ? Tablo2 olarak gösterilir.


9. Soru

Veri tabanı modelinde Bölme (÷) Cebir işlemleri nedir?

Cevap

M(x,y) ve N(y) iki tablo olmak üzere M÷N işlemi alan değeri y’ ye eşit olan M tablosu içindeki (x) alan değerlerini verir.


10. Soru

İlişkisel Veritabanı Nesneleri ve Kavramlar nelerdir?

Cevap

İVTYS ilişkisel veritabanı modelini esas alan yönetim yazılımıdır. İVTYS ilişkisel veritabanının yönetimini, veritabanı ile iletişimi sağlayan arayüzlerden oluşur. İVTYS’de veri tablo adı verilen veri nesnelerinde tutulur.

Aynı zamanda tabloları oluşturan kayıtlar, alanlar, alanlarda saklanabilecek değerlerin veri tipleri ve kısıtlardan bahsedilecektir. Tablolar, İlişkisel Örnek İlişkisel modele göre veri tablolar içinde tutulur. Her bir tablo kayıtlar ve alanlardan oluşur.


11. Soru

Tablolar, İlişkisel Örnek nelerdir?

Cevap

Tablolar veritabanının baş yapılarıdır ve her bir tablo tek ve özel bir temayı temsil eder. Daha önceden de ifade edildiği gibi tablo içindeki kayıtların ve alanların sıralamasının bir önemi yoktur. Böylece veri, ilişkisel veritabanında sunucudaki fiziksel depolama alanından bağımsız olarak tutulmuş olur. Her tabloda tablo içindeki satırları benzersiz olarak ifade etmekte kullanılan en az bir alan bulunur.

Verilen tablo içinde tutulan tema bir nesne veya hareket olabilir. Tablo içindeki tema bir nesne ise, bir kişi, bir yer gibi somut bir şey temsil ettiği anlamına gelir. Bu tablolar birden fazla kullanılan değerleri tutmak için kullanılır ve doğrulama tabloları (validation, lookup) olarak adlandırılır.

Örneğin özneler, aktörler, şehir adları, yetenek kategorileri, ürün kodları ve proje belirleme kodları gibi veriler doğrulama tablolarında tutulur.


12. Soru

Veri tabanında kullanılan veri tipleri nelerdir?

Cevap

Veri Tipleri; Bu eleman tablonun alanlarında depolanan verinin yapısını gösterir.


13. Soru

Veri tabanında kullanılan basit veri tipleri nelerdir?

Cevap

Basit Veri Tipleri; Bu veri tiplerinde tek bir değer üzerinde bir örüntü veya değer kısıtlaması yapılır. Sayılar buna örnek olarak verilebilir.

Karakter: Bu veri tipi sabit veya değişken boydaki karakter dizilerinde (bir veya daha fazla yazılabilir) karakterleri depolamakta kullanılır. Sabit boyutlu karakter veri tipi CHARACTER ya da CHAR olarak bilinir.

Değişken boydaki karakter dizisi veri tipi ise CHARACTER, CAHR VARYING veya VARCHAR olarak bilinir.

Sabit boydaki karakter dizisinde yabancı dildeki karakter kümelerinden karakterleri depolamak için NATIONAL CHARACTER, NATIONAL CHAR ve NCHAR veri tipleri kullanılır. Değişken boydaki yabacı dildeki karakter dizilerini depolamak için ise NATIONAL CHARACTER VARYING, NATIONAL CHAR VARYING ve NCHAR VARYING kullanılır.


14. Soru

Veri tabanında kullanılan veri tiplerinden Bit nedir?

Cevap

Bit, Bu veri tipi ikili sayı sistemindeki sayılardan (binary number) oluşan dizileri depolamakta kullanılır. İkili sayı sistemindeki verilere örnek olarak dijital görüntü ve ses verisi verilebilir. Bu veri tipi BIT, BIT VARYING, BINARY veya VARBINARY olarak kullanılır.


15. Soru

Veri tabanında kullanılan veri tiplerinden Tam Sayısal Veri nedir?

Cevap

Tam Sayısal: Bu veri tipi tüm sayları ve ondalık ayırıcılı sayıları depolar. İVTYS yazılımlarının büyük çoğunluğu tam sayısal veri tipi olarak NUMERIC, DECIMAL(DEC), INTEGER (INT) ve SMALLINT kullanır.


16. Soru

Veri tabanında kullanılan veri tiplerinden Yaklaşık sayısal nedir?

Cevap

Yaklaşık Sayısal: Bu veri tipinde ondalık ayırıcılı sayılar ve üslü sayılar depolanır. İVTYS yazılımlarında yaklaşık sayısal veri tipi için FLOAT, REAL ve DOUBLE PRECISION kullanılır.


17. Soru

Veri tabanında kullanılan veri tiplerinden Tarih Zaman Veri tipi nedir?

Cevap

Tarih ve Zaman: Bu veri tipi genelde TIMESTAMP olarak bilinir ve tarihleri, saati veya her ikisini birden depolamakta kullanılır. Bu veri tipi farklı İVTYS yazılımlarında çok farklı uygulanabilir. Bu nedenle bu veri tipini kullanmadan önce İVTYS yazılımının tarih ve saatleri nasıl kullandığı öğrenilmelidir.


18. Soru

Veri tabanında kullanılan veri tiplerinden Karmaşık Veri Tipleri nedir?

Cevap

Karmaşık veri tipleri nesne veri tiplerini kapsar. Bu veri tipleri nesnelerin kullanımı ve ilişkisel veritabanları arasında bir köprü görevi görür. İkili sayı ile temsil edilen nesneler (binary objects), veri grup dizileri (collection arrays) bu veri tipindendir. Örneğin bir resim ikili sayı sisteminde bir alanda tutulabilir. Bu veri tipi genelde nesne tabanlı veritabanı sistemlerinde yaygın olarak kullanılır.


19. Soru

Veri tabanında kullanılan veri karmaşık tiplerinden ikili veri nedir?

Cevap

İkili (binary) nesneler: İkili nesneler olağan ilişkisel veritabanı kayıt yapılarından ikili veriyi ayırmak için oluşturulmuştur. Resim gibi büyük nesneleri içeren tablolar, karakterler ve sayılar içeren ortalama bir tablo kaydından çok daha büyüktür. Bu nedenle depolanma problemi ortaya çıkabilir. Veritabanı tablo kayıtlarını fiziksel olarak 2 ila 8 kilobayt büyüklükte bloklarda tutar. Bu nedenle ikili nesneler geleneksel tablo kayıt değerlerinden farklı olarak oluşturulmuştur. Büyük karakter dizileri, video, XML veri, ses vb. ikili nesneler olarak tutulur.


20. Soru

Veri tabanında kullanılan veri karmaşık tiplerinden Referans işaretçileri nedir?

Cevap

Referans işaretçileri (pointers): Bazı ilişkisel veritabanları veritabanı dışına depolanmış nesne veya dosyaları işaretlemek (point) için bu veri tipini kullanır. Veritabanı dışındaki nesne veya dosyaları gösteren bilgi tablonun kayıtlarındaki bir alanda tutulur. Tablonun ilgili alanında tutulan bilgi sadece adresi içerir. Böylece büyük nesneler veritabanı dışına depolandığı için veritabanının fiziksel depolama alanını yönetmesindeki verimlilik bozulmamış olur.


21. Soru

Veri tabanında kullanılan veri karmaşık tiplerinden koleksiyon diziler nedir?

Cevap

Koleksiyon diziler: Bu veri tipinde tablo alanında dizi tutulur. Koleksiyon diziler sabit veya dinamik uzunlukta olabilir.


22. Soru

Veri tabanında kullanılan veri karmaşık tiplerinden kullanıcı tanımlı veri nedir?

Cevap

Kullanıcı tanımlı: Bazı İVTYS yazılımları kullanıcının kendi tanımladığı veri tiplerini kullanmasına izin verir. Kullanıcı tanımlı veri tipileri yazılım ile oluşturulabilir ve tabloların alanlarının veri tipi olarak atanabilir.


23. Soru

Veri tabanında özelleştirilmiş veri tipleri nelerdir?

Cevap

Özelleştirilmiş Veri Tipleri ; Bu veri tipleri daha gelişmiş ilişkili veritabanı sistemlerinde görünür. Özelleştirilmiş veri tipleri verinin yapısına uygun depolama sağlamak için oluşturulur. Örneğin MS SQL Server İVTYS yazılımındaki bazı özelleştirilmiş veri tipleri; XML: Hiyerarşik düzende verilerin saklanmasını sağlayan bir veri saklama sistematiğidir. XML yapısı içerisinde saklanan verilere göre farklılaşabilir.

  • Geography: Coğrafi verilerin saklanması için özelleştirilmiş veri türleridir. Enlem, meridyen, yükseklik gibi konumsal verilerin saklanması için oluşturulmuştur.
  • Geometry: Geometrik şekillerin standart bir tanımı yapılarak yeniden çizilmesine yönelik verilerin saklanmasını sağlar. Şekillerin en, boy, yükseklik ve koordinat gibi verilerini barındırır.
  • Hierarchyid: Birbirleri ile ilişkili nesneleri hiyerarşik bir ağaç yapısında saklayan veri türüdür. Bu yapı sadece veri değil verilerin birbiri olan ilişkilerini saklayan bir veri türüdür.

24. Soru

Veri tabanında kullanılan null değeri kullanımı nedir?

Cevap

NULL bilinmeyen veya olmayan değeri gösterir. NULL sayısal değerlerdeki sıfır ya da karakter dizilerindeki bir veya daha fazla boş karaktere karşılık gelmez.


25. Soru

Veri tabanında kullanılan kısıtlar nelerdir?

Cevap

Kısıtlar (Constraint) Kısıtlar tablodaki alanlar üzerine kuralların uygulanmasını mümkün kılar. Tablo içine giren veri türünün kısıtlanması veritabanı içindeki verinin doğruluk ve güvenirliliğini sağlar. Kısıtlar tablo veya alan seviyesinde olabilir. Alanlar üzerindeki kısıtlayıcılar sadece ilgili alana uygulanırken, tablo seviyesi kısıtlar tüm tabloya uygulanır. Tablo kısıtı alan tanımlarından ayrı olarak yapılır ve tablonun birden fazla alanına uygulanabilir. Birden fazla alan üzerine kısıt konulmak istenirse tablo kısıtı kullanılmalıdır.


26. Soru

Veri tabanında kullanılan null kısıttı nedir?

Cevap

NOT NULL Kısıtı Veritabanı tablosunun alanlarının mutlaka dolu olması gerektiğinde boş bırakılmaması için uygulanan bir zorlamadır. Eğer bir alanın özelliği NOT NULL olarak belirlenmiş ise tabloya yeni bir kayıt eklenirken bu alana ait değerin boş bırakılmasına izin verilmez.

Kullanıcı bir hata mesajı ile bilgilendirilir ve kaydın tamamlanmasına izin verilmez. DEFAULT Kısıtı Tabloya bir kayıt eklendiği veya değiştirildiği zaman DEFAULT kısıtlı alana değer belirtilmemiş ise ilgili alana varsayılan bir değer atanmasını sağlar. Özellikle bir alanda NULL değerlere izin verilmiyor ve DEFAULT tanımı yapılmamış ise ilgili tabloya kayıt eklenirken ilgili alan dolu olmalıdır aksi hâlde veritabanı hata verecektir.

DEFAULT kısıtı tablo oluşturulurken varsayılan değerin atanacağı alan tanımına eklenir. Anahtar Kısıtı Anahtar kısıtları birincil anahtar (primary key), benzersiz anahtar (unique key) ve yabancı anahtardan (foreign key) oluşur. Anahtar kısıtları farklı tablolardaki alanlar arasındaki değerlerin kontrol ve doğrulanmasına izin verir.


27. Soru

Veri tabanında kullanılan indexler nelerdir?

Cevap

İndeksler (Indexes) İndeks çoğunlukla bir tablonun küçük bir kısmının (tablonun bir alanı gibi) kopyasıdır. İndeks oluşturulurken tablonun depolandığı alan dışında farklı bir yere indekste kullanılan alan (veya alanların) kopyası taşınır. Bazı veritabanlarında indeksler tamamen farklı veri dosyalarında saklanır. İndeksler bir kitabın başındaki içindekiler veya sonundaki indeks bölümü gibi davranır.

Özel bir konu aranırken kitabın indeks bölümünden nasıl doğrudan ilgili sayfa no bulunup konuya erişilirse, aynı şekilde tablolardaki indeks ile de istenilen değer indeksten bulunur ve tablodaki kayıta hızlı olarak erişilir.

Saklı Yordamlar (Stored Procedures); İVTYS içinde yapılan programlamanın büyük kısmı saklı yordamlar ile yapılır. Genellikle saklı yordamlar veri üzerinde ön işlem yaparak veritabanı dışına gönderilecek verinin miktarını düşürmekte kullanılır.


28. Soru

İlişkisel modelde tablolar arası ilişkiler nasıl sınıflanır?

Cevap

İlişkisel modelde tablolar arası ilişkiler bire-bir, bire-çok ve çoka-çok olarak sınıflanır.


29. Soru

Geleneksel ilişkisel cebirde işlemler kaç bölümden oluşur? Açıklayınız.

Cevap

İlişkisel cebirde tüm işlenen veriler ve sorguların sonuçları kümeler hâlinde ifade edilir. Geleneksel ilişkisel cebirde işlemler dört sınıfta toplanabilir.

  1. a) Tablolara uygulanılan genel küme işlemleri: birleşim (union, ?), kesişim (intersection, ?) ve fark (difference, -) işlemleridir.
  1. b) Bir tablodan parçalar getiren işlemler: seçim (selection, ?) bazı kayıtları elerken, yansıtma (projection, ?) bazı alanları eler.
  2. c) İki tablonun kayıtlarını bitiştiren işlemler: Kartezyen çarpım (Cross-product, x) birinci kümenin her satırı ikinci kümenin her bir satırıyla eşleşir. Şartlı Bitişme (Conditional Join, ??) iki tablonun kartezyen çarpımı sonucundan verilen şarta uyan kayıtlar getirilir. Kartezyen çarpımın getirdiğinden daha az çoklu kayıt içermesi daha verimli bir biçimde hesaplamayı sağlar. Gösterimde şart yerine ? sembolü kullanıldığı için Teta (Theta, ?) bitişmesi diye de adlandırılır. Doğal bitişme (Natural Join, ?) her ortak alanda eşit bitişme yapılarak bulunur. Bölme (Division, ÷) işlemi; eğer B tablosundaki y kümesi A tablosundaki bir x ile ilişkilendirilmişse ve A tablosundaki x ile ilişkili bir şekilde B tablosundaki tüm y’leri kapsıyorsa, bu x A÷B kümesi içerisindedir
  3. d) Yeniden adlandırma (Renaming, ?) tablolardaki kayıtları etkilemez ancak erişilen alanların veya tabloların adlarını kullanım sırasında değiştirir.

30. Soru

İlişkisel cebirde yansıtma işlemini açıklayınız ve sembolünü gösteriniz.

Cevap

Yansıtma işlemi bir tablonun sadece seçilen alanlarından oluşan yeni bir tablo oluşturur. Sembol: ?


31. Soru

İlişkisel cebirde seçim işlemini açıklayınız ve sembolünü gösteriniz.

Cevap

Seçim işlemi verilen bir tablonun kayıtlarının alt kümesi olarak yeni bir tablo üretir. Getirilen alt küme verilen bir şarta göre seçilir. Seçim şartını gerçekleyen satırlar getirilir.


32. Soru

Tablolar arası bağlantı nasıl kurulur?

Cevap

Birincil anahtar ile.


33. Soru

Hareket (transaction) tablolarında hangi tür veriler tutulur?

Cevap

Hareket (transaction) tablolarında ise dinamik veri tutulur


34. Soru

Veri tipleri nelerdir? Açıklayınız.

Cevap

a.)Basit Veri Tipleri Bu veri tiplerinde tek bir değer üzerinde bir örüntü veya değer kısıtlaması yapılır. Sayılar buna örnek olarak verilebilir.

b.)Karmaşık Veri Tipleri Karmaşık veri tipleri nesne veri tiplerini kapsar. Bu veri tipleri nesnelerin kullanımı ve ilişkisel veritabanları arasında bir köprü görevi görür. İkili sayı ile temsil edilen nesneler (binary objects), veri grup dizileri (collection arrays) bu veri tipindendir. Örneğin bir resim ikili sayı sisteminde bir alanda tutulabilir. Bu veri tipi genelde nesne tabanlı veritabanı sistemlerinde yaygın olarak kullanılır.

c.) Özelleştirilmiş Veri Tipleri Bu veri tipleri daha gelişmiş ilişkili veritabanı sistemlerinde görünür. Özelleştirilmiş veri tipleri verinin yapısına uygun depolama sağlamak için oluşturulur.


35. Soru

Null Değeri hangi durumlarda kullanılır?

Cevap

bilinmeyen veya olmayan değer karşılığında kullanılır.


36. Soru

(Null × 3) + 4 =?

Cevap

Null


37. Soru

(25 + 3) * Null  =?

Cevap

Null


38. Soru

Veritabanı tablosundaki bir değerin boş bırakılmasına izin verilmemek istenirse hangi özellik kullanılır?

Cevap

Eğer bir alanın özelliği NOT NULL olarak belirlenmiş ise tabloya yeni bir kayıt eklenirken bu alana ait değerin boş bırakılmasına izin verilmez. Kullanıcı bir hata mesajı ile bilgilendirilir ve kaydın tamamlanmasına izin verilmez.


39. Soru

Anahtar kısıtları nelerden oluşur?

Cevap

Anahtar kısıtları birincil anahtar (primary key), benzersiz anahtar (unique key) ve yabancı anahtardan (foreign key) oluşur.


40. Soru

Bir veya daha fazla alana girilebilecek değerlerin sınırlandırılması nasıl sağlanır?

Cevap

CHECK Kısıtı ile bir veya daha fazla alana girilebilecek değerlerin sınırlandırılması sağlanır


41. Soru

Sabit boydaki karakter dizisinde yabancı dildeki karakter kümeleriden karakterleri depolamak için hangi veri tipleri kullanılır.

Cevap

Sabit boydaki karakter dizisinde yabancı dildeki karakter kümeleriden karakterleri depolamak için NATIONAL CHARACTER, NATIONAL CHAR ve NCHAR veri tipleri kullanılır


42. Soru

TIMESTAMP veri tipi ne için kullanılır?

Cevap

TIMESTAMP  tarihleri, saati veya her ikisini birden depolamakta kullanılır. Bu veri tipi farklı İVTYS yazılımlarında çok farklı uygulanabilir.


43. Soru

İki tablonun ortak kayıtları nasıl getirilir?

Cevap

Kesişim (?) işlemi kullanarak.


44. Soru

Bit veri türü nedir?

Cevap

Bit: Bu veri tipi ikili sayı sistemindeki sayılardan (binary number) oluşan dizileri depolamakta kullanılır. İkili sayı sistemindeki verilere örnek olarak dijital görüntü ve ses verisi verilebilir. Bu veri tipi BIT, BIT VARYING, BINARY veya VARBINARY olarak kullanılır.


45. Soru

FLOAT, REAL ve DOUBLE PRECISION hangi veri türünde kullanılır?

Cevap

Yaklaşık Sayısal: Bu veri tipinde ondalık ayırıcılı sayılar ve üslü sayılar depolanır. İVTYS yazılımlarında yaklaşık sayısal veri tipi için FLOAT, REAL ve DOUBLE PRECISION kullanılır.


46. Soru

Hierarchyid nasıl bir veri türüdür?

Cevap

Hierarchyid: Birbirleri ile ilişkili nesneleri hiyerarşik bir ağaç yapısında saklayan veri türüdür. Bu yapı sadece veri değil verilerin birbiri olan ilişkilerini saklayan bir veri türüdür.


Güz Dönemi Dönem Sonu Sınavı
18 Ocak 2025 Cumartesi
v