Veri Tabanı Sistemleri 3.hafta Flashcards

1
Q

Veri tipi seçimi, veri tabanı sisteminin hangisi olduğu neden önemlidir?

A

MySQL, Oracle, PostSQL vb. ile çalışılıyorsa bunlara bağımlılık oluşur ve bunlarla devam etmek gerekir.Çünkü sistem veri tabanına bağımlıdır. örn integer yerine mysql veri tipi mediuminteger (3 byte) veri tipi kullanırsan sonrasında da mysql kullanmak zorunda kalırız.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Veri tabanı bağımlılığını gidermek

A

Veri tipi bağımsız sitemleri kurmak güçtür ancak bağımsız olur.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Domain nedir?
Domain yaratmak
Create Domain

A

domain etki kümesidir. Tabloda yıllar yada film isimleri vb. sütunları domaindir.
Create domain ile yaratırken kısıtlar, veri tipi bilgileri verilerek oluşturulur.
Drop (delete) domain komutu domaini siler.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

relation →
tuple →
attribute →

A

relation → table,
tuple → row,
attribute → column

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Birincil anahtar olmadan tablo oluşturma

A

Veri tabanları kendine has komutlarla id oluşturabilir. Ancak her veritabanının komutları farklıdır.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Drop komutunun geri dönüşü yoktur.

A

Verilen komuta dikkat edilmelidir.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

SQL büyük küçük harfle yazımı…

A

Geleneksel olarak SQL büyük harfle yazılır çünkü bazı sistemlerde bu fark eder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Veri tabanı oluşturulan işletim sistemi de önemlidir.

A

Windowsta çalışan Linuxta format farkı nedeniyle çalışmayabilir.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Table creation, tablo oluşturma komutlarında null yada not null seçilebilir. boş geçilemez yada geçilir. Varsayılan değer nedir?

A

Nullable yani boş geçilebilirdir.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Veri tabanında kısıtlar koyarak girilebilecek verilerin aralığı belirlenebilir.

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Uniqueness
Veri tabanına veri eklenirken aynı satırın girişini tekrar yapmaz.

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Physical Delete
Logical Delete

A

Logical delete’de aslında silme işlemi yapılmıyor ancak sadece gösterilmiyor.
Bağlantıları logical delete’e atıf yapılacaksa dikkat edilmesi gerekli.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Index Nedir, ne işe yarar?

A

Full table scan işini veri tabanı sistemleri kendileri yapabilirler. Bu işi indexleme ile yaparak çok kısaltırlar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

işlem karmaşıklığı nedir?

A

işlem karmaşıklığı bir işlemi gerçekleştirmek için gerekli çabayı ifade eder. n eleman sayısı ise bazı algoritmalarda n^2 kadar işlem gerekebilir.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Indexing işleminde tek sıra liste yerine ne kullanılırsa aranan veri bulma işi hızlanır?

A

Binary tree yöntemiyle arama işlemi çok kısaltılır.
Logn yöntemi ile büyük verilerin arama işlemi daha da kısalır.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Indexleme örneği;
Logn yöntemi daha çok elemanlı veri içerisinde daha kolay bulma yöntemi sağlar.

A

Örn. 4 milyar elemanlı bir veride aranan eleman en fazla 32 adımda bulunabilir.

17
Q

Integer yerine string verililerde indexleme neye göre yapılır?

A

Integer için sayının diğerine göre büyük yada küçük olmasına bakılırken string için sözlük sırasına göre binary ve logn yöntemi kullanılabilir.

18
Q

Indexleme hangi durumlarda çok verimli olmaz.

A

Eğer sürekli giriş (insert) ve güncelleme (update) yapıyorsam indexlemenin hızlı çalışabilmesi için sürekli dengede tutacak şekilde güncellemem gerekir. Bu da ayrı bir iş ve maliyettir. Bu durumlarda full scan indexin daha mantıklıdır.

19
Q

Data Manipulation Language DML
Tabloya satır eklemek - Insert Into
Row deletion uyarısız siler.
Update ile güncellemede SET ile koşullar girilir. WHERE ile hangi veride yapılacağı belirtilir.

A

INSERT INTO MOVIE VALUES (


burada kolonlar belirtilmeyebilir.
Budurumda veriler, kolonlar hangi sıradaysa bu sıraya göre verilmiş olmalıdır.

20
Q

Referential Integrity
Foreign Key Example

A

Okun ucu boşta kalmayacak kuralını gerçeklemeye çalışırız.

21
Q

Foreign Key silme yada güncelleme durumlarında ne olacağı da seçilir.

A

NULL yada atıf yapılanları silme gibi seçenekler vardır.
Tanımlama yapılmamışsa silinene atıf yapılmış yada başka satırlarca gösterilmişse genelde default olarak izin vermez. ON DELETE RESTRICT. Bunun dışında silinir.
Örnek: Referential Integrity Example yansısına bak.

22
Q

Kodlamada WAMP kullanacağız.
Aynı şeyleri DATAGRIP ile de yapabiliriz. Veri tabanına göndereceği kod cümleciğini kendisi oluşturur kullanıcı dostu arayüzü sayesinde. Yani IDE gibi bir şey. Third part generator.

A
23
Q

Primary Key özelliği nedir

A

Tekrarlamamalı ve dolu olmalıdır.
Bunun dışında değiştirilebilir.

24
Q

MySQL ve DataGrip’i kurmaya çalış.

A
25
Q

Update yapıldığında bağlantılarına da Cascade yani yansıma olması doğaldır.
Ancak silindiğinde ne yapılmalıdır?

A

Bazı durumlarda başta restriction yapılarak yine de silmek isteniyorsa bağlı satırların elle manuel SQL script ile silmesi sonrasında istenen satırın silinmesi sağlanır.
Bazı durumlarda SET NULL ile NULL yazması istenebilir.

26
Q

Veri üzerinde yapılabilecek işlemlerin kısaltması ve anlamları nelerdir?

A

CRUD
Create
Read
Update
Delete

Bunlara DML data manipulation language deniyor

27
Q

Referential integrity (referans bütünlüğü) foreign anahtarlarda bir satırın silinmesiyle bozulursa ne olur?

A

don’t allow if used: RESTRICT, NO_ACTION
I reflect the change to affected tuples: CASCADE
I assign null value: SET NULL
I assign default value: SET DEFAULT

28
Q

Satır silme işleminde silinen satıra herhangi bir ok gelmiyorsa varsayılan ayarlar neye karar verir?

A

silmeye karar verir.
On Delete Restrict komutu kesinlikle silmemek demek değildir. Bir referans alıyorsa silmemek anlamına gelir.

29
Q

birden fazla okun gösterdiği anahtar satırımız varsa ve birine restrict diğerine cascade komutu verilmişse ne olur?

A

Kısıta aykırı bir restrict durumu olması hiçbirinin silinmemesine neden olur.

30
Q

ÖZET
CREATE TABLE
CREATE DOMAIN
DROP DOMAIN/TABLE
CREATE INDEX
ALTER TABLE

A

ALTER CONSTRAINT işleminde veritabanları eklemeyi önceki girdiler ters düşebileceği için kabul etmeyebilir.

31
Q

DELETE FROM table_name
WHERE kolon_ismi

Burada kısıt belirtilmezse ne olur?

A

Bütün satırlar silinir ve geri getirilemez.