İlişkileri kullanma

Tablo ilişkilerini kullanmaya başlama

Tarayıcınız video desteklemiyor.

Deneyin!

İlişkisel veritabanı, gücünü tabloları birleştiren verilerden alır. Öncelikle tablolarınız arasında ilişki oluşturmanız gerekir. Sonra da Access’i kullanarak sorgularda, formlarda ve raporlarda yer alan verileri birleştirmeniz gerekir.

Bir veritabanı için tanımlanan mevcut ilişkilerin tümünü görmek için, bir Access şablonu açıp Veritabanı Araçları sekmesine gidin ve İlişkiler’i seçin.

Not: Boş bir veritabanı açarsanız veya herhangi bir tablo ilişkisi tanımlamadıysanız, Access sizden tablo veya sorgu eklemenizi ister. İlişki ekleyebilmeniz için önce en az iki tabloya ihtiyacınız vardır. İdeal olan, önce tüm tablolarınızı oluşturmanızdır. Daha fazla bilgi için bkz . Arama Sihirbazı ile ilişki oluşturma ve İlişkiler Bölmesi ile ilişki oluşturma.

İlişkiler görünümünü anlama

İlişkiler görünümündeki çizgiler, tablolar arasındaki bağlantıyı belirtir. Aşağıdaki görüntüde soldaki tablo, üst tablodur. Sağdaki tablo da alt tablodur. Aralarındaki çizgi, verileri eşleştirmek için kullanılan alanları (bu durumda Sipariş Kimliği ve Ürün Kimliği alanları) bağlar.

İlişkiler, üst öğe ve alt öğe alanları arasına çekilen çizgilerle gösterilir.

Çizgiler ve simgeler, tablolarınızın ne şekilde ilişkili olduğunu gösterir:

  • Kalın bir bağlantı çizgisi, bilgi tutarlılığını zorunlu kıldığınızı belirtir. Bu iyi bir şeydir. Bu sayede tüm verileriniz eşitlenmiş durumda kalır.

  • Çizimimizde 1 sayısı, söz konusu tabloda yalnızca tek bir eşleşen kayıt olabileceğini belirtir. Burada gösterilen Siparişler tablosunda yalnızca bir kayıt, başka bir kayıtla eşleşir.

  • ∞ simgesi, çok sayıda kaydın aynı kimliği içerebileceğini belirtir. Burada gösterilen Sipariş Ayrıntıları tablosunda, aynı sipariş birden fazla ürün içerebileceğinden, bir sipariş (sipariş kimliğiyle belirtilen) birden fazla kez bulunabilir.

Tablolar arasındaki ilişki türü

Tablolar arasında üç ilişki türü vardır:

  • Bire bir. Her tablodaki her öğe yalnızca bir kez görüntülendiğinde. Örneğin, her çalışanın kullanması gereken tek bir şirket arabası olabilir. Daha fazla bilgi için bkz. Bire bir ilişkiler oluşturma.

  • Bire çok. Bir tablodaki bir öğenin, başka bir tablodaki birden fazla öğeyle ilişkisi bulunuyorsa kullanılır. Örneğin, her satın alma siparişi birden fazla ürün içerebilir.

  • Çoka çok. Bir tablodaki bir veya daha fazla öğenin başka bir tablodaki bir veya daha fazla öğeyle ilişkisi olabilir. Örneğin, her siparişin birden çok ürünü olabilir ve her ürün birçok siparişte görünebilir. Daha fazla bilgi edinmek için bkz. Çoka çok ilişkiler oluşturma.

Bire çok ilişkiler

İyi tasarlanmış tablolardaki en yaygın ilişkilerden biri, bire çok ilişkileridir.

Tablolar arasındaki ilişkiler genelde tablolardan birindeki birincil anahtara dayalıdır. Birincil anahtarın, her kaydın benzersiz tanıtıcısı (genellikle sayısaldır) olduğunu unutmayın. İki farklı tablodaki bilgilerin ilişkili olduğunu göstermek için genellikle tablolardan birindeki birincil anahtarı kullanarak bir ilişki oluşturursunuz.

Örneğin, burada gösterilen ilişkide, Kişiler tablosundaki her kişinin birincil anahtar (yanındaki anahtar simgesiyle gösterilir) olan bir kimliği vardır. Bu kimlik, Varlıklar tablosundaki Sahip alanında da görünür. Bir varlıkla ilişkili kişiye e-posta göndermek için değeri Email Adresi alanından alın. Bunu yapmak için, Varlık tablosunun Sahip alanındaki değeri arayın ve ardından Kişiler tablosunda bu kimliği arayın. Bağlantı satırının bir ucundaki 1 sayısı ve diğer ucundaki ∞ simgesi bunun bire çok ilişkisi olduğunu gösterir, bu nedenle bir kişi birçok varlıkla ilişkilendirilebilir.

Bir-çok ilişkisi

Bir ilişkiyi düzenleme

Mevcut bir veritabanını değiştiriyorsanız veya veritabanınızı bir şablondan oluşturduysanız, mevcut ilişkileri ihtiyaçlarınızı karşılayacak şekilde düzenleyebilirsiniz.

Not: Üzerinde çalışmak istediğiniz tablolar kullanımdaysa, bunları kullanan tüm açık projelerin yanı sıra tabloları da kapatmanız gerekir.

  1. Veritabanı Araçları > İlişkiler’i seçin.

  2. İki ilişkili tabloyu bağlayan çizgiyi seçin.

    İpucu: İstediğiniz ilişkiyi göremiyorsanız Tasarım sekmesindeki İlişkiler grubunda Tüm İlişkiler’i seçin.

  3. Tasarım sekmesinde İlişkileri Düzenle’yi seçin.

    Tablolar arasındaki mevcut ilişkiyi düzenleme

    Tablo/Sorgu, sol tarafta bulunan üst tablodur (bu örnekte, Müşteriler).

    İlişkili Tablo/Sorgu, alt tablodur (bu örnekte, Siparişler).

    Tablolar İlişkiler görünümünde bu sırada görünmeseler bile iletişim kutusundaki yerleşimleri, tabloları bağlayan çizgilerin yönünü ve ilişkiyi gösterir. Örneğin, ilişkinin bire çok ilişki olması durumunda bu, tek olanın soldaki tablo (üst tablo) ve çok olanın sağdaki tablo (alt tablo) olduğunu gösterir; bu nedenle önemlidir.

  4. Tabloları bağlayan alanları değiştirmek için, gösterilen tabloların altındaki farklı bir alanı seçin. Bu örnekte, Müşteriler tablosundaki Kimlik alanı, Siparişler tablosundaki Müşteri Kimliği alanına bağlanır.

  5. Access’in verilerinizi tablolar arasında eşitleme biçimini değiştirin.

    Bilgi Tutarlılığına Zorla

    Geçersiz verileri önlemek ve tablo ilişkileri arasındaki başvuruları eşitlenmiş halde tutmak için bunu seçin.

    Örneğin, Çalışanlar ve Çalışan Hakları tabloları arasında bire bir ilişki olduğunu varsayalım. Bir çalışan şirketten ayrılırsa ve çalışanı Çalışanlar tablosundan kaldırırsanız, Çalışan Hakları tablosundaki ilişkili çalışan kaydı da silinir.

    Bazı durumlarda, bilgi tutarlılığını zorunlu kılmak anlamlı olmayabilir. Örneğin, Nakliyeciler ve Siparişler tabloları arasında bire çok ilişki olduğunu varsayalım. Siparişler tablosundaki siparişlerle eşleşen bir nakliyeciyi siliyorsunuz. Söz konusu siparişler artık hale gelirler; yani hala bir Nakliyeci Kimliğine sahiplerdir ancak Kimlik, başvurduğu kayıt mevcut olmadığından artık geçerli değildir.

    İlişkili Alanları Art Arda Güncelleştir

    İlişkili alanlardaki verilerin tüm ilişkili alanlarda güncelleştirildiğinden emin olmak için bu seçeneği belirleyin.

    Örneğin, bir nakliyecinin kimliğini değiştirmek istediğinizi varsayalım. Bu seçeneği ayarlayarak Nakliyeci Kimliği’nin yalnızca Nakliyeci tablosunda değil, ayrıca Siparişler tablosu gibi söz konusu Nakliyeci Kimliğini içeren ve bu tabloya bağlı olan diğer tüm tablolarda da güncelleştirilmesini sağlayabilirsiniz.

    İlişkili Kayıtları Art Arda Sil

    Bunu seçip seçmeyeceğiniz, bazı tablolardaki kayıtları diğer tablolardan silinmeleri durumunda bile saklamanız gerekip gerekmediğine bağlıdır.

    Örneğin, bir nakliyeciyi sildiğinizi varsayalım. Bu seçenek belirtilmişse Access, söz konusu nakliyeci tarafından nakledilmiş tüm siparişler dahil olmak üzere (Siparişler tablosundaki), söz konusu Nakliyeci Kimliğine başvuran tüm kayıtları tüm tablolardan siler. Bu seçeneği yalnızca, sipariş geçmişinizin silinmesini istiyorsanız belirtin.

  6. tablolar arasındaki ilişkiyi iç birleşimden dış birleşime değiştirmek için Birleştirme Türü düğmesini seçin. Daha fazla bilgi için bkz. Dış birleşimlerle sorgu oluşturma.

Tablo ilişkisini silme

Not: Üzerinde çalışmak istediğiniz tablolar kullanımdaysa, bunları kullanan tüm açık projelerin yanı sıra tabloları da kapatmanız gerekir.

Tablo ilişkisini silmek için:

  1. Veritabanı Araçları > İlişkiler’i seçin.

  2. İki ilişkili tabloyu bağlayan çizgiyi seçin.

    İpucu: İstediğiniz ilişkiyi göremiyorsanız Tasarım sekmesindeki İlişkiler grubunda Tüm İlişkiler’i seçin.

  3. Delete tuşunu seçin. İlişkiyi silmek istediğinizi doğrulamanız istenirse Evet’i seçin.

Not: Bir ilişkiyi kaldırdığınızda, bu ilişkinin bilgi tutarlılığı desteğini de (varsa) kaldırmış olursunuz. Bunun sonucunda Access, bire çok ilişkinin çok tarafındaki artık kayıtlara neden olan değişiklikleri önlemeyi durdurur.

Daha fazlasını mı istiyorsunuz?

İlişki oluşturma, düzenleme veya silme

Daha fazla yardıma mı ihtiyacınız var?

Daha fazla seçenek mi istiyorsunuz?

Abonelik avantajlarını keşfedin, eğitim kurslarına göz atın, cihazınızın güvenliğini nasıl sağlayacağınızı öğrenin ve daha fazlasını yapın.

Topluluklar, soru sormanıza ve soruları yanıtlamanıza, geri bildirimde bulunmanıza ve zengin bilgiye sahip uzmanlardan bilgi almanıza yardımcı olur.