CASCADE seçeneğini belirterek "yabancı anahtar kısıtlaması" silindiğinde ne olacağı konusunda net değilim.CASCADE davranışı
Örneğin, opsiyon BASAMAKLA bu durumda yapması gereken nedir bu komut
ALTER TABLE table1 DROP CONSTRAINT foreignKeyToTable2 CASCADE.
düşünün? Eğer ihmal ettiysem ne olur? Ve eğer CASCADE yerine RESTRICT yazdım?
Not: Bu sorgu örneği "Ramez Elmasri, Shamkant B. Navathe - Veri tabanı sistemlerinin temelleri, bölüm 5'in sonu" dan alıntılanmıştır. Yabancı bir anahtar bırakarak zaman birincil anahtarlarını bırakarak, zaman değil
Yabancı anahtarların nasıl çalıştığını açıklamak çok geniş bir soru. Veri tabanı dokümantasyonu genellikle bu durumu iyi bir şekilde kapsar ve fikirler veritabanlarında hemen hemen aynıdır. İşte MySQL belgeleri: https://dev.mysql.com/doc/refman/5.6/en/create-table-foreign-keys.html. –
Hangi DBMS'yi kullanıyorsunuz? –
@GordonLinoff Yabancı anahtarların nasıl çalıştığını inceledim, ancak CASCADE anahtar kelimesinin ne yazması gerektiğini anlamıyorum. Yani tablo1'den tablo2'ye atıfta bulunan bir yabancı anahtar oluşturur ve CASCADE anahtar sözcüğünü kullanarak tablo2'yi silersem, yabancı anahtar silinir. Eğer bir DBMS olsaydım, yürütme işleminden sonra hiçbir şeyi SIFIR TABLO table1 DROP CONSTRAINT foreignKeyToTable2 CASCADE komutunu silerdim. – Nisba