MySql – Foreign Key Kontrolünü – Kısıtlamalarını Kapatmak

Standard

Aslında Türkçe mesleki anlamda kullanmak bence sağlıklı olmayabiliyor herzaman. Bu konuyu aratan kimsenin foreign key kısıtlaması diyeceğini zannetmiyorum 🙂
Disable Foreign Key Checks or Constraints desek daha sağlıklı olacaktı bence konu başlığına..

İlişkisel veritabanları ile çalışmaya başladığınız zaman hayatınıza foreign key adında yeni bir kavram girecek.
Ve ilişkili dataları kaydederken size ilişiği olan tablodaki kayıt yoksa veya başka yerde kullanılan bir datayı silmeye çalıştığınız zaman şöyle bir hata döndürür sistem:

Cannot add or update a child row: a foreign key constraint fails

Bu durumda ya deveyi güdeceksiniz yada diyardan gideceksiniz diye düşünebilirsiniz ama Hatalı kaydı bulmak bazen zor olabiliyor.

Ben size 3 satırda bu kontrol işlemini kapatmayı göstereceğim..

SET foreign_key_checks = 0; DELETE FROM users WHERE id > 45; SET foreign_key_checks = 1;

Devamını Oku..

Mysql de | (pipe) ile birleştirilmiş sahaları ayıklamak

Standard

Elinize bir veritabanı geldi diyelim. Burada programcı dataları tek kolonda pipe ( | ) ile veya başka özel karakterler ile birleştirerek saklamayı tercih etmiş diyelim.

Siz de tüm sahayı seçmek yerine içinden bir kısım almak istiyorsunuz diyelim. Bunun için size 2 yöntem göstereceğim.

Devamını Oku..

SQL İle Egzersiz..

Standard

Bir arkadaşım kardeşine TOBB üniversite mühendislik bölümün de okuyor ve hocası sql ödevi vermiş.. Nasıl yaparım ederim diye geldi ve yardım istedi.. Bende biraz göz gezdirdim sorulara ve çözmeye çalıştım..

Sonra bu sorular ile karşılaşan olur diyerek aynı kitap, kitaplık, kütüphane örneğini paylaşmak istedim..

Sorumuz:

TOBB Mühendislik SQL Sorusu

Burada tablolar ve sorular yazıyor.. bende ilk 4 şıkkı oturdum geç saatte bakmaya başladım ve buyrun çözümleri:

A)

SELECT K.KNO,K.KADI FROM KITAP K,YAZAR Y, KTYAZ KT WHERE KT.KNO=K.KNO AND KT.YAZNO = Y.YAZNO GROUP BY K.KNO HAVING COUNT(KT.YAZNO) > 1

Devamını Oku..