Her tabloda birincil anahtar olmalıdır?
Veritabanı bir tablo yaratıyorum ve mantıksal bir birincil anahtar atanmış yok. Yani, birincil anahtar olmadan ayrılmayı düşünüyorum, ama biraz guiltly bu konuda gaze geldim. Ben Mi Söyleyeyim?
Her tabloda birincil anahtar olmalıdır?
< / ^ hr .
EDİT: Tamam, tamam... birincil anahtar yarattım! Şimdi mutlu musun? :)
CEVAP
Kısa cevap:Evet.
Uzun cevap:
- Masanız bir şey joinable olmak gerekir
- Eğer tablo kümelenmiş olmasını istiyorsanız, birincil anahtar bir tür gerekir.
- Eğer tablo tasarım birincil anahtar gerekmez, tasarımı yeniden düşünmek: büyük olasılıkla, bir şey eksik. Neden aynı kayıtları tutmak?
Eğer açıkça, böylece ekstra bir sütun yapma belirtin sormaman ** 0, InnoDB
depolama motoru her zaman PRIMARY KEY
oluşturur erişimi yok.
PRIMARY KEY
bir bileşik olabileceğini unutmayın.
Eğer çok-çok bağlantı bir tablo varsa, tüm alanları bağlantı dahil PRIMARY KEY
oluşturun. Böylece iki veya daha fazla kayıt anlatan bir link yok mu emin olun.
Mantıksal tutarlılık sorunların yanında, RDBMS
motor UNIQUE
Bir dizinde bu alanlar da dahil olmak üzere yararlanacaktır.
PRIMARY KEY
UNIQUE
dizin oluşturma içerir beri, beyan ve hem de mantıksal tutarlılık ve performans almalısınız.
Her zaman benzersiz veri: UNIQUE
bir dizin oluşturmak için blogumda bu makaleye bakın
S. S.Bazı vardırçok, çokbirincil anahtar gerekmez özel durumlarda.
Çoğunlukla performansı artırmak için ANY
dizinler yok günlük tablolar vardır.
SQL - çok-çok tablo birincil anahtar...
Karşı benzersiz nesne bileşik birincil...
Birincil anahtar MySQL otomatik olarak...
Raylar kullanarak, nasıl tamsayı yazıl...
Birincil anahtar veya Benzersiz dizin?...