v2.5.2
Giriş yap

MySQL deki ID bağımlılığından kurtulmak

bayburt
365 defa görüntülendi

başlıkta da belirttiğim gibi kodlarken MySQL de ki id bağımlılığından kurtulmanın bir yolu var mıdır

Sanırım Soruyu hatalı sordum
Aslında şu şekil sorsam sanırım daha anlaşılır olurdu
veri tabanında 20 tane tablo var ve bu tablolarda binlerce kaydım olduğunu varsayalım
bu kayıtların hepsi ürünler tablosu ile ilişkili
ürünler tablosundan bir ürünü yanlışlıkla sildiğimi farz edelim bu kayıtla ilişkili 20 tane tablodaki binlerce kaydın ürünler tablosunda bir karşılığı olmadığı için haliyle çöp olmuş olacak bu gibi senaryoda nasıl bir yol izlenmeli ıD bağımlılığından kastım buydu

Cevap yaz
Cevaplar (4)
abdullahx
618 gün önce

İlişkisel veri tabanı mantığını yi anlamak gerekiyor bu durumda. Bahsettiğiniz durum için da tam olarak FOREIGN KEY diye bir kavram var. urunler tablonuzun birincil anahtarını diğer 19 tabloda bir yabancı anahtar (foreign key) olarak tanımlayıp arasındaki ilişkiyi de güzelce belirlerseniz hem yanlışlıkla silmelerin önüne geçersiniz hem de silinen bir değerin diğer tablolardaki bağımlılıklarının da istenildği şekilde düzenlenmesini sağlamış olursunuz. Özellikle foreign key ile kullanılan CASCADE özelliğine dikkat çekmeniz gerekir. En iyi yöntem budur.

Belki bir de trigger (tetikleyici) kullanarak da bir tablodaki veri değişikliklerini izleyip diğer tablolardaki manipülasyonu sağlayabilirsiniz. Bunun için örnek video linki

bayburt
618 gün önce

Sanırım Soruyu hatalı sordum
Aslında şu şekil sorsam sanırım daha anlaşılır olurdu
veri tabanında 20 tane tablo var ve bu tablolarda binlerce kaydım olduğunu varsayalım
bu kayıtların hepsi ürünler tablosu ile ilişkili
ürünler tablosundan bir ürünü yanlışlıkla sildiğimi farz edelim bu kayıtla ilişkili 20 tane tablodaki binlerce kaydın ürünler tablosunda bir karşılığı olmadığı için haliyle çöp olmuş olacak bu gibi senaryoda nasıl bir yol izlenmeli ıD bağımlılığından kastım buydu

tayfunerbilen
618 gün önce

eger unique bir degerin varsa id haricinde, elbette id kullanmak zorunda degilsin. ornegin blog mantigini ele alalim.

eger senin basliklarinin tamami birbirinden farkli olacagina eminsen, unique olacaksa o zaman id yerine url kontrolu yapabilirsin, sana kalmis bu durum.

jct
619 gün önce

Trafikte aynı marka, model ve renkte yüzlerce hatta binlerce araç var, ancak bu araçları ayıran tek fark plaka. Aynı plakadan başka araç yok. Umarım örnek anlaşılır olmuştur.