ACC2000: Bir Microsoft Access veritabanında tablolar arasında ilişkiler tanımlama

Makale çevirileri Makale çevirileri
Makale numarası: 304467 - Bu makalenin geçerli olduğu ürünleri görün.
Acemi: tek kullanıcılı bilgisayarlarda kullanıcı arabiriminin bilgisi gerektirir.

Bu makale yalnızca Microsoft Access veritabanına (.mdb) için geçerlidir.

Hepsini aç | Hepsini kapa

Bu Sayfada

Özet

Bu makalede, bir Microsoft Access veritabanında ilişkiler tanımlama. Aşağıdaki konuları içerir:
  • Tablo ilişkileri nedir
  • Tablo ilişkilerinin türleri
    • -Çok ilişkiler
    • Çok-çok ilişkiler
    • Bire Bir İlişki

  • Tablolar Arasındaki İlişki Nasıl Tanımlanır
    • Bir-çok veya bire bir ilişki tanımlama
    • Tanımlama bir çok-çok ilişkiler

  • Bilgi tutarlılığı
  • Güncelleştirmeleri ve silmeleri basamaklandırma
  • Birleştirme türleri

Daha fazla bilgi

Tablo ilişkileri nedir

İlişkisel bir veritabanında, ilişkiler gereksiz verileri önlemenizi sağlar. Örneğin, kitaplar hakkında bilgi izleyecek bir veritabanı tasarlıyorsanız, her kitabın, kitap hakkında bilgi depolayan başlıkları adında bir tabloya sahip? s başlığı, yayım ve publisher tarihi. Publisher'ın telefon numarası, adresi ve posta kodu gibi yayıncı hakkında saklamak isteyebileceğiniz bilgiler de bulunmaktadır. Bu bilgilerin tümü başlıklarını depolamak isterseniz tablo, yayımcı? s telefon numarası yayınladığı her başlık için çoğaltılırdı.

Ayrı tabloda, yayımcı Yayımcı bilgilerini yalnızca bir kez depolamak daha iyi bir çözümdür. İşaretçi, Titles tablosundaki başvuran yayıncıların tablosundan bir giriş sonra yerleştirecek.

Verilerinizi eşit değil emin olmak için başlıklar ve yayıncılar tabloları arasındaki bilgi tutarlılığını zorlayabilirsiniz. Bilgi tutarlılığı ilişkileri tek bir tablodaki bilgileri başka bir bilgi ile eşleştiğinden emin olun yardımcı olur. Örneğin, Titles tablosundaki her başlık yayımcılar tablosundaki belirli bir yayımcı ile ilişkili olmalıdır. Veritabanında var olmayan bir yayımcı için bir başlık veritabanına eklenemiyor.

Tablo ilişkilerinin türleri

Bir ilişki anahtar sütunları, genellikle her iki tablodaki aynı adı taşıyan sütunlarda verileri eşleştirerek çalışır. Çoğu durumda, ilişki diğer tablodaki yabancı anahtar içinde bir girişi olan her satır için benzersiz bir tanımlayıcı sağlayan bir tablodaki birincil anahtar ile eşleşir. Örneğin, satış satış tablo (yabancı anahtar) title_id sütun Titles tablosundaki (birincil anahtar) ve title_id sütun arasında bir ilişki oluşturarak satılan belirli başlıklar ile ilişkilendirilebilir.

Tablolar arasındaki ilişkileri üç tür vardır. Oluşturulan ilişki türü ilişkili sütunların nasıl tanımlandığına bağlıdır.

-Çok ilişkiler

Bir-çok ilişkinin ilişki en yaygın türüdür. Bu tür ilişki bir satırda tablo bir can b tablosunda birçok eşleşen satırları olan, ancak b tablosundaki bir satırın a tablosunda yalnızca bir eşleşen satır olabilir Örneğin, Yayımcılar ve başlıklar tablolarının bir-çok ilişkisi vardır: her yayıncı birçok başlık üretir ancak her başlık bir yayıncıdan geliyor.

Yalnızca ilgili sütunlardan biri birincil anahtar veya benzersiz kısıtlamaya sahip bir-çok ilişkisi oluşturulur.

Access'te, bir-çok ilişkinin birincil anahtar tarafı bir anahtar simgesi ile gösterilir. Bir ilişkinin yabancı anahtar tarafı bir sonsuzluk simgesiyle belirtilir.

Çok-çok ilişkiler

Bir-çok ilişkisinde, a tablosundaki bir satırın b tablosunda birçok eşleşen satırları olabilir veya tam tersi. Yabancı anahtarlar tablo a ve b tablosundaki birincil anahtar oluşan bir birleşim tablosu adı verilen üçüncü bir tablo tanımlayarak bir ilişki oluşturun Örneğin, yazarlar tablosunu ve Titles tablosunu bir-çok ilişki bu tablolardan her biri için başlık yazarları tablosunu tarafından tanımlanan bir-çok ilişkisi vardır. Tablonun birincil anahtarı olarak yazarları au_Id sütun birleşimidir (authors tablosu? s birincil anahtar) ve title_id sütun (Titles tablosunu? s birincil anahtar).

Bire Bir İlişki

Bire bir ilişkide, a tablosundaki bir satırın b tablosunda birden fazla eşleşen satır olabilir veya tam tersi. İlişkili sütunların her ikisi de birinci anahtar ise veya benzersiz kısıtlamalara sahipse, bire bir ilişki oluşturulur.

Bu yolla ilgili bilgilerin çoğu, tümü bir tabloda olacağından bu tür bir ilişki ortak değil. Bire bir ilişki için kullanabilirsiniz:
  • Çok sayıda sütun içeren bir tabloyu bölmek.
  • Güvenlik nedenleriyle bir tablonun parçası yalıtmak.
  • Ömürlü ve kolayca tablo silerek silinebilir verileri depolar.
  • Yalnızca bir ana tablonun altkümesine uygulanan bilgiyi saklar.
Access'te, bire bir ilişkinin birincil anahtar tarafı bir anahtar simgesi ile gösterilir. Yabancı anahtar tarafı bir anahtar simgesi de belirtilir.

Tablolar Arasındaki İlişki Nasıl Tanımlanır

Tablolar arasında bir ilişki oluşturduğunuzda, ilişkili alanlar aynı ada sahip gerekmez. Bununla birlikte, ilişkili alanlar aynı veri türü OtomatikSayı alanı birincil anahtar alanı olmadığı sürece olması gerekir. FieldSize özelliği eşleştirme alanlarının ikisi de aynı ise, bir OtomatikSayı alanını bir sayı alanı ile eşleştirebilirsiniz. Örneğin, her iki alanın FieldSize özelliği uzun tamsayı ise, bir OtomatikSayı alanı ve bir sayı alanı eşleştirebilirsiniz. Eşleştirme alanlarının ikisi de Sayı alanı olsa, bile, bunlar aynı FieldSize özellik ayarına sahip olmalıdırlar.

Bir-çok veya bire bir ilişki tanımlama

Bir-çok oluşturmak için veya bire bir ilişki, şu adımları izleyin:
  1. Açtığınız tüm tabloları kapatın. Oluşturamaz veya açık tablolar arasındaki ilişkileri değiştirin.
  2. Veritabanı penceresine geçmek için F11 tuşuna basın.
  3. Araçlar menüsünde İlişkiler' i tıklatın.
  4. Veritabanınızda henüz herhangi bir ilişki tanımlamadıysanız, Tabloyu Göster iletişim kutusu otomatik olarak görüntülenir. İlişkilendirmek istediğiniz, ancak Tablo Göster iletişim kutusu görüntülenmezse, tabloları eklemek isterseniz, ilişkileri menüsünden Tabloyu Göster'i tıklatın.
  5. İlişkilendirmek istediğiniz tabloların adlarını çift tıklatın ve sonra Tabloyu Göster iletişim kutusunu kapatın. Bir tablo ile kendisi arasında ilişki oluşturmak için bu tabloyu iki kere ekleyin.
  6. Bir tablodan başka bir tablodaki ilgili alana bağlamak istediğiniz alanı sürükleyin. Birden çok alanı sürüklemek için CTRL tuşunu BASILI tutun, her alanı tıklatın ve sonra sürükleyin.

    Çoğu durumda, kalın metin olarak görüntülenir) birincil anahtar alanı (bir tablo diğer tabloda yabancı anahtar olarak adlandırılan benzer alana (genellikle aynı adı taşıyan) sürükleyin.
  7. İlişkileri Düzenle iletişim kutusu görüntülenir. İki sütunda görüntülenen alan adlarını doğru olduğundan emin olun. Gerekirse bunları değiştirebilirsiniz.

    Gerekirse ilişki seçeneklerini ayarlayın. İlişkileri Düzenle iletişim kutusunda özel bir madde ile ilgili bilgilere gereksiniminiz varsa soru işareti düğmesini tıklatın ve sonra öğeyi tıklatın. Bu seçenekler, bu makalenin sonraki bölümlerinde ayrıntılı açıklanması.
  8. İlişki oluşturmak için Oluştur ' u tıklatın.
  9. İlişkilendirmek istediğiniz tabloların her çifti için 5 ile 8 arasındaki adımları yineleyin.

    İlişkileri Düzenle iletişim kutusunu kapattığınızda, Microsoft Access düzeni kaydetmek isteyip istemediğinizi sorar. Oluşturduğunuz ilişkiler, düzeni kaydedip kaydetmediğiniz olup olmadığını veritabanına kaydedilir.

    Not: Sorgular aynı zamanda tabloları ilişkiler oluşturabilirsiniz. Ancak, sorgularla başvuru tutarlılığı zorlanmaz.

Tanımlama bir çok-çok ilişkiler

Bir-çok ilişkisi oluşturmak için aşağıdaki adımları izleyin:
  1. Bir-çok ilişkisi olan iki tablo oluşturun.
  2. Bir birleşim tablosu adı verilen üçüncü bir tablo oluşturun ve birincil anahtar alanları aynı tanımları içeren dönemler kavşak tablosu yeni alanlar için diğer iki tablonun her birinden ekleyin. Kesişme tablosunda, birincil anahtar alanları yabancı anahtar işlevi. Diğer tablolara yapabildiğiniz gibi kesişme tablosuna da başka alanlar ekleyebilirsiniz.
  3. Kesişme tablosunda, birincil anahtarı diğer iki tablodan birincil anahtar alanları içerecek biçimde ayarlayın. Örneğin, yazarları kesişme tablosunda, birincil anahtar SiparişNo ve ÜrünKodu alanlarından yapılmış.

    Not: bir birincil anahtar oluşturmak için aşağıdaki adımları izleyin:
    1. Tablo Tasarım görünümünde açın.
    2. Alan veya birincil anahtar olarak tanımlamak istediğiniz alanları seçin. Bir alanı seçmek için istediğiniz alanın satır seçicisini tıklatın.

      Birden fazla alanı seçmek için ctrl tuşunu basılı tutun ve her alanın satır seçicisini tıklatın.
    3. Araç çubuğunda, Birincil anahtar ' ı tıklatın.

      Not: Çok alanlı birincil anahtar alanları sırasının tablodaki alanların sipariş numaralandırmasından farklı olmasını istiyorsanız, DizinlerDizin iletişim kutusunu görüntüleyin ve sonra dizin adlı birincil anahtariçin alan adlarını yeniden sıralayın araç çubuğunda tıklatın.
  4. İki birincil tablo ve kavşak tablosu arasında bir-çok ilişkisi tanımlayın.

Bilgi tutarlılığı

Bilgi tutarlılığı kuralları Microsoft Access ilgili tablodaki kayıtları arasındaki ilişkilerin geçerli olduğunu sağlamak için kullanır ve yanlışlıkla silme veya ilişkili verileri değiştirmek, bir sistemdir. Aşağıdaki koşulların tümü karşılandığında bilgi tutarlılığını ayarlayabilirsiniz:
  • Eşleşen alan birincil tablodan birincil anahtar veya benzersiz bir dizin vardır.
  • İlgili alanlar aynı veri türüne sahip. Bunun iki istisnası vardır. Bir OtomatikSayı alanını bir sayı alanı FieldSize özelliği uzun tamsayı ayarı için ilgili ve FieldSize özellik ayarı yineleme kimliği olan bir sayı alanı için bir sayı alanı FieldSize özellik ayarı Yineleme Kimliği ile ilgili
  • Her iki tablo da aynı Microsoft Access veritabanına aittir. Tablolar ilişkili tablolar ise, tablolar Microsoft Access biçiminde olması gerekir ve bilgi tutarlılığını ayarlamak için saklandıkları veritabanını açmalısınız. Bilgi tutarlılığı, diğer biçimlerdeki veritabanlarından ilişkili tablolar için zorlanamaz.
Bilgi tutarlılığı kullandığınızda aşağıdaki kurallar uygulanır:

  • Birincil tablonun birincil anahtarında bulunmayan ilgili tablonun yabancı anahtar alanında bir değer giremezsiniz. Ancak, kayıtların ilgisiz olduğunu belirten yabancı anahtarda Null bir değer girebilirsiniz. Örneğin, varolmayan bir müşteriye atanmış bir siparişiniz olamaz, ancak Müşteri Kimliği alanına boş değer girerek hiç kimseye atanmış bir siparişiniz olabilir.
  • İlgili tabloda eşleşen kayıtlar varsa, birincil tablodan kayıt silemezsiniz. Örneğin, Siparişler tablosunda çalışan için atanmış siparişler varsa Çalışanlar tablosundan çalışanın kaydını silemezsiniz.
  • Bu kaydın ilgili kayıtları varsa, birincil tablo bir birincil anahtar değerini değiştiremezsiniz. Örneğin, Siparişler tablosunda o çalışan için atanmış siparişler varsa, Çalışanlar tablosunda çalışanın Kimliğini değiştiremezsiniz.

Güncelleştirmeleri ve silmeleri basamaklandırma

Başvurusal bütünlük içinde zorlandığı ilişkiler için istediğiniz Microsoft Access otomatik olarak basamaklı güncelleştir veya ilişkili kayıtları Ardarda Sil belirtebilirsiniz. Bu seçenekleri ayarlarsanız, silme ve güncelleştirme normalde bilgi tutarlılığı kurallarına izin verilir engelleyen işlemleri. Kayıtları sildiğinizde veya birincil tablodaki birincil anahtar değerlerini değiştirmek, Microsoft Access bilgi tutarlılığını korumak için ilgili tablolarda gerekli değişiklikleri yapar.

İlişkiyi tanımlarken İlişkili alanları Ardarda Güncelleştir onay kutusunu seçmek için tıklatın, birincil tablodaki bir kaydın birincil anahtarı her değiştirdiğinizde Microsoft Access otomatik olarak birincil anahtar için tüm ilgili kayıtlarda yeni değeri güncelleştirir. Müşteriler tablosunda bir müşterinin Kimliğini değiştirirseniz, İlişkisi kopmuş değil, örneğin, Siparişler tablosundaki MüşteriNo alanını otomatik olarak o müşterinin her siparişi her biri için güncelleştirilir. Microsoft Access güncelleştirmeleri herhangi bir ileti görüntülemeden basamaklı.

Not: Birincil tablodaki birincil anahtar Otomatik Sayı alanı ise, otomatik sayı alanındaki değeri değiştiremediğinizden İlişkili alanları Ardarda Güncelleştir onay kutusunu işaretleyerek hiçbir etkisi olmaz.

İlişkiyi tanımlarken İlişkili kayıtları Ardarda Sil onay kutusunu işaretlerseniz, birincil tablodaki kayıtları her sildiğinizde Microsoft Access ilgili tablodaki ilgili kayıtları otomatik olarak siler. Müşteriler tablosundan bir müşteri kaydını silerseniz, örneğin, müşterinin tüm siparişlerini otomatik olarak (Bu kayıtları siparişler kayıtlarıyla ilgili Sipariş Ayrıntıları tablosunun içerir) Siparişler tablosundan silinir. İlişkili kayıtları Ardarda Sil onay kutusu seçili form veya veri sayfasından kayıtlar sildiğinizde, Microsoft Access, ilgili kayıtların da silinebileceği konusunda uyarır. Silme sorgusunu kullanarak kayıtları sildiğinizde, Bununla birlikte, Microsoft Access otomatik olarak ilgili tablodaki kayıtları uyarı görüntülemeden siler.

Birleştirme türleri

Aşağıdaki gibi üç birleşim türü vardır:

Seçenek 1 , bir iç birleşim tanımlar. Burada yalnızca birleştirilen alanlardaki değerler belirtilen bir koşula uyuyorsa bir sorgunun sonuçlarında iki tablodan kayıtlar birleştirilir birleşim iç birleşim dir. Sorguda, varsayılan birleşim yalnızca birleştirilen alanlardaki değerler eşleşiyorsa kayıtlar seçen bir dış birleşim dir.

Sol dış birleştirme seçeneği 2 tanımlar. Bir birleşim sol dış birleşim ise sağdaki tabloda birleştirilmiş alanda eşleşen değer olmasa bile içinde hangi tüm sorgunun sql deyimindeki sol birleştirme işleminin sol tarafındaki kayıtları sorgunun sonuçlarına eklenir.

Seçenek 3'ü sağ dış birleşim tanımlar. Sağ dış birleşim birleştirme değil soldaki tabloda birleştirilmiş alanda eşleşen değer olmasa bile, içinde hangi tüm sorgunun sql deyimindeki sağ birleştirme işleminin sağ tarafındaki kayıtları sorgunun sonuçlarına eklenir.

Referanslar

Microsoft Access içindeki ilişkileri hakkında ek bilgi için aşağıdaki Microsoft Web sitesinde Microsoft Access 2000 Yardım sayfasında "Tablolar oluşturma ve tasarlama" konuyu tıklatın:
Microsoft Access 2000 Yardım
Microsoft Access içindeki ilişkileri hakkında daha fazla bilgi için tıklatın Microsoft Access Yardımı üzerindeYardım Menü, türü Oluşturma veya değiştirme ilişkileri Office Yardımcısı'na veya Yanıt Sihirbazı'nı tıklatın ve sonra Arama döndürülen konuları görüntülemek için.

Özellikler

Makale numarası: 304467 - Last Review: 16 Aralık 2012 Pazar - Gözden geçirme: 4.0
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Access 2000 Standard Edition
Anahtar Kelimeler: 
kbhowto kbmt KB304467 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir: 304467

Geri Bildirim Ver

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com