Makale numarası: 209564 - Son Gözden Geçirme: 30 Haziran 2004 Çarşamba - Gözden geçirme: 2.0

ACC2000: Önce bir dizinli alan bileşik dizinler sınırla olmalı

Sistem İpucuBu makale, kullandığınızdan farklı bir işletim sistemine yöneliktir. Sizinle ilgili olmayabilecek makale içeriği devre dışı bırakıldı.
Bu makale yalnızca Microsoft Access veritabanı (.mdb) için geçerlidir.

Gelişmiş: Uzman kodlama, birlikte çalışabilirlik ve çok kullanıcılı becerileri gerektirir.

Hepsini aç | Hepsini kapa

Özet

Dizin kullanılmadan önce birden çok alan (bileşik) dizinleri kısıtlamalar sorgularla en az bir dizinin ilk alanı sınırlamalısınız. Ancak ayrıca bitişik dizin (en fazla 10 alan) alanlar kullanabilirsiniz. Ilk alan dışında bir alana sınırlama girdiyseniz, tablo dizini kullanmak yerine, sorgu en iyi duruma getiricisi tarar. Tablo taramaları dizini arar, çoğu sorgular daha yavaş olduğundan bu her zaman, uygun değil.

Daha fazla bilgi

Microsoft Access'te bir bileşik bir dizin oluşturulduğunda varsayılan olarak, bileşik dizininde yer alan tek tek dizin atanır. Bu davranış tasarım yüzündendir.

Bir dizin kullanmak sorgu en iyi duruma getiricisi için bir karşılaştırmasını bileşik dizini içindeki ilk alana veya ilk alanı ve herhangi bir sayı alanlarının bileşik dizini, bitişik (en çok 10) kullanmanız gerekir. Dizinler iletişim kutusunda göründükleri sırada dizine alınmış alanları ilk dizine alınmış alanı ile başlayan ve bitişik alanlarla devam sorgulamalısınız.

Not: Bu ilke ölçüt Visual Basic'te <a2>Bul</a2> yöntemini for Applications kullanarak için de geçerlidir.

Örneğin, üç alan içeren bir tablo (T1) göz önünde bulundurun: key_part1, key_part2 ve key_part3. Sonra ilk alanın key_part1, kullanılmadığı için bu üç alan üzerinde oluşturulan bir bileşik dizini ve tüm alanları, birincil anahtar olan, aşağıdaki SQL deyimi, dizin kullanmaz.
SELECT * FROM T1 WHERE key_part2 = <value>
				

Aşağıdaki SQL deyimi bilgileri yapmak dizini kullanın. Key_part1 söz edilir, ancak key_part1 ve key_part3 bitişik alanlar değildir.
SELECT * FROM T1 WHERE key_part1 = <value> AND key_part3 = <value>
				

Bununla birlikte, bunların hepsi birinci alan veya <a2>ilk alanı</a2> ve <a4>Bileşik dizinin bitişik bir veya daha fazla alan içerdiğinden her biri aşağıdaki üç SQL deyimlerini dizini kullanır:
SELECT * FROM T1 WHERE key_part1 = <value>

SELECT * FROM T1 WHERE key_part1 = <value> AND key_part2 = <value>

SELECT * FROM T1 WHERE key_part1 = <value> AND key_part2 = <value> AND key_part3 = <value>
				

Yukarıdaki alanların üzerlerinde tek tek dizinler sahip Yasak değil. Karşılaştırmaları ile dizin aramaları bu alanlarda sağlayarak, her alan için tek tek dizinler oluşturulmadan. Ancak, dizinler olarak çok (veya daha çok) alan verilerden alabilir, dikkat edin.

Referanslar

Dizinler oluşturma hakkında daha fazla bilgi için Yardım menüsünden Microsoft Access Yardımı ' nı tıklatın, dizin oluşturma, Office Yardımcısı'na veya Yanıt Sihirbazı'nı yazın ve sonra döndürülen konuları görüntülemek için Ara ' yı tıklatın.


Sorgularını en iyi duruma getirme hakkında daha fazla bilgi için Yardım menüsünden Microsoft Access Yardımı ' nı tıklatın, performansı en iyi duruma getirme, Office Yardımcısı'na veya Yanıt Sihirbazı ' yazın ve sonra döndürülen konuları görüntülemek için Ara ' yı tıklatın.

Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Access 2000 Standard Edition
Anahtar Kelimeler: 
kbmt kbinfo kbusage KB209564 KbMttr
Otomatik TercümeOtomatik Tercüme
Ö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:209564  (http://support.microsoft.com/kb/209564/en-us/ )