Kısa bir süre önce, çok değer alanlı olan yeni Access 2007 özelliğine tanıtıldım. İlk izlenimim, tek bir alanda birden çok değer kullanmanın kötü bir fikir olduğu yönündedir. Geleneksel olarak bir kaydın bir alan için birkaç değere sahip olmasını istiyorsanız, başka iki tablo oluşturacak ve bunları yabancı anahtarlarla ilişkilendireceksiniz. Bu, kolay sorgulama yapılmasına olanak tanır ve aynı değerlerin aynı öğeye başvurmasını sağlar. Bir hücrede listelerin tutulması, veritabanlarının amacının ihlali gibi görünüyor. Multivalued Alanlar İyi Bir Fikir mi?
beni kirli hissediyorum yapmazlar bu alanlar için orada iyi kullanır mı?cevap
fikri raporu/arayüz nesneleri kolayca oluşturulmasını desteklemek oldu ek olarak, tek görüntüler bir sorun için kategoriler söylüyorlar bir form oluşturabilirsiniz. yerine
Mekanik Elektrik
personnally benden bir alanda bir değer olarak
Mekanik, Elektrik
: Yerine bazı yoğun işler yapmanın, tanrı korusun katılır, depolamak için sözde simplier oldu beğenmeyin ve bu tür bir alanın muhasebeci olmayan teknik personel için yaratıldığını varsayın :) (sadece şaka). Cidden, hiç kimsenin kullanamayacağı nadiren aptalca bir araç yaratmadıkça ve nadiren herkesin girmek zorunda kalacağı sürece bunu kullanmayın.
bu birleştirmeler edilir işlemek için uygun yolu, sütunların içindeki hiçbir çiftleri ve hiçbir çoklu değerleri (bu zaten bütün 3NF ise).
bu oluşturulan diğer nedeni bir sharepoint listesinin içindeki çoklu değerleri desteklemek amaçlanmıştır.
Jon
Erişim pazarının büyük bir bölümü teknik, kullanıcıların olmayan geliştiricisi, ama türüdür. Normalleşmenin değerini anlayamayabilirler, ancak işe yarayacak bir şeyler bulabilirler. Sadece kolay bir şeye ihtiyaç duyuyorlar ve insanların yazdığı bir serbest metin alanından daha iyi, her şeyin aynı şeyi yazmasını umduğun yerden daha iyi.
daha fazla bilgi edinmek üzere, diğer tablolar ve yabancı tuşlarını kullanarak başlayabilir. Ancak bazen çok değerli bir alan yeterlidir. birden çok değerli alanların
Tıpkı 640K ve 2 hane yıla bakış saklamak için;) muhasebeciler için – RedFilter
SADECE SAY NO!
Eğer SQL öğreniyorsanız, doğru yolu öğrenin ve tablolarınızı normalleştirin. veritabanı tasarımını biliyorsanız, doğru şekilde yapın. Her özellik kullanılmamalıdır.
Bkz: Ben Suraj Poozhiyil, Erişim Programı Müdürü ... hem Suraj uzun bir konuşma vardı ve kullanmaya gerek geliştiriciler yok yürekten katılıyorum
Multivalued datatypes considered harmful: How dangerous can a data type be?
çok değerli alanlar. Veritabanlarını anlayan kişiler, 'un zaten çok sayıda ilişkisini iyi bir şekilde uyguladılar ve çok değerli alanlardan hiçbir fayda elde edemezler.
geliştiricilere açık ve kesin önerilerim çok değerli alanları kullanmamaktır. Onlar bize potansiyel ağrı dışında sunmak için hiçbir şey yok.
O zaman neden onları yarattılar? Açıkçası gerçek dünyada kullanımları vardır, etraflarında inşa edilen bütün bir veri tabanı, Unidata ve Evren vardır. – Noah
@Noah: Hızlı bir google bana bunların SQL'e değil PICK'e bağlı olduğunu söylüyor. Anladığım kadarıyla, PICK, birden çok değerli veriyi sorgulamak için gereken sözdizimine (operatörler vb.) Sahiptir, Access/Jet/ACE bunu yapmaz. Gerçekten benim alanım, dürüst olmak gerekirse (Intersystems Caché'yi kullandım ama sadece SQL Gateway üzerinden - ki bu mükemmel - MUMPS şeyler değil). 5NF ile en mutlu oluyorum :) – onedaywhen
gerçekten burada soruya cevap değil, ama okuyucular MultValued Databases fikri etrafında bütün bir niş sanayi olduğunu not etmek isteyebilirsiniz:
sahip niteliklerini ziyade, değerler listesi olan niteliklerin kullanımını teşvik özellikleri 10Bu veritabanları sahip oldukları bir ilişkisel veritabanı farklılık desteklemek ve tüm tek bir değeri
Bu durumda, veritabanı altyapısı, tablolarının çok boyutlu yapısını (Access'in muhtemelen yapmadığını varsayar) barındıracak şekilde bir sorgu dili uzantısına sahip olduğundan, Access'teki çok değerli alanlarla gerçekten karşılaştırılabilir değildir. Ancak her durumda ilginç bir paralellik (daha önce MultValued Veritabanlarını bile duymamış olanlar için).
Çok değerli alanları gerçekten sevmiyorum. Belki de eski PICK/Unidata sistemi gibi diğer çok değerli sistemlerle arayüz oluşturmayı kolaylaştırmak için yaptılar. Bahse girerim, bu yeni özelliğin SQL Server'a yoğun olarak kullanımıyla bir Access veritabanını yükseltmek kadar eğlenceli.
ACE'de olmanın tek nedeni Sharepoint ile uyumluluk içindir. Verilere aslında kayıt kümeleriyle erişilebilir ve gerçek V: N tablolarına yazmak için bir VBA yazmak oldukça kolay olacaktır. Tabii ki, Access SSMA'sının SSMA'ları MV alanlarını anlayabiliyor ve onları iyi bir şekilde geliştirebiliyor. Eğer ilginizi çekiyorsa, hem A2007 hem de SSMA 4.2'nin kurulu olduğu gibi, bunu bir vuruş olarak bulabilirim. –
@ David-W-Fenton: "ACE'de olmasının tek nedeni, Sharepoint ile uyumluluk içindir" - ... ancak Access Ekibi, Access'teki genel kullanımını desteklemektedir. Bu bir kez SharePoint söz değil: http://office.microsoft.com/en-us/access-help/use-a-list-that-stores-multiple-values-HA010031117.aspx – onedaywhen
Pazarlama malzemeleri çok sık değil tüm gerçeği ortaya çıkarmak. –
Çoklu değer alanlı alanlar, yeni bir tablo ve ilişki oluşturmak zorunda kalmadan kolayca kurtarabilir.
Soda -> Türleri
Neden sadece Pepsi düzenli diyet ve daha geliyor söylemek yepyeni masa gerek yoktur. Keşkeonlar o zaman onlar sadece bir tablo gibi olurdu, bize çok değerli alan sütunlarını vermek için izin ancak çok daha az çalışma ile
- 1. MacGorts ile RubyGems iyi bir fikir mi?
- 2. Mysql datetime alanını dizine eklemek iyi bir fikir mi?
- 3. Arama yapıyor - [NSRunLoop runUntilDate:] iyi bir fikir mi?
- 4. Statik sınıf AppContext kullanmak iyi bir fikir mi?
- 5. BootFaces ve PrimeFAces'i birlikte kullanmak iyi bir fikir mi?
- 6. C# action.BeginInvoke (action.EndInvoke, null) iyi bir fikir mi?
- 7. Django haystack multivalued çalışmıyor
- 8. ASP.NET Sayfa Özellikleri İyi Fikir veya Kötü Fikir
- 9. Bir GUID'den tire kaldırmak iyi bir fikir midir?
- 10. RequestAnimationFrame'i bir geridönüş işlevi içinde kullanmak iyi bir fikir midir?
- 11. PHP çıktı arabellekleme - kötü bir fikir gibi geliyor, değil mi?
- 12. Ağ geri bildirimi için zayıf Referans kötü bir fikir mi?
- 13. Javacard güvenlik tasarımı: hepsi aynı genel ve özel anahtarı akıllıca iyi bir fikir mi?
- 14. Cakephp 3: Varlık gelen Tablo fonksiyonları Çağrı kötü ya da iyi bir fikir mi?
- 15. raylar + ataç: Genel "Ek" modeli iyi bir fikir midir?
- 16. Milyarlarca görüntüyü Veritabanına kaydetmenin iyi bir fikir olduğunu mu düşünüyorsunuz?
- 17. ASP.NET MVC'yi E-posta Şablonu Olarak Kullan Motor: İyi Fikir?
- 18. Apache solr cevabındaki alanlar, tekil
- 19. Fonksiyonlar alanlar olarak saklanabilir mi? Bu geri aramalar için iyi bir yaklaşım mı?
- 20. alanlar
- 21. C++, dairesel bağımlılığı iyi bir fikir çözmek için bir başlık oluşturuyor?
- 22. bir yedek anahtar ifadesi olarak yeni Dinamik Kelime kullanmak kötü bir fikir mi?
- 23. Bir veritabanında javascript ve css saklamak için kötü bir fikir mi?
- 24. Symfony2'de web varlıklarını yönetmek için besteciyi bağlamak iyi bir fikir midir?
- 25. Sihirli dize anahtarlarını önlemek için dize sabit tuşlarını kullanmak iyi bir fikir midir?
- 26. Php sleep() işlevi, CPU'yu ağır betikte tutmak için iyi bir fikir midir?
- 27. Bir nesneyi yayımlama bağlamında bağlamı (this) mi? Kendini iyi mi?
- 28. SlickGrid için iyi bir eğitici mi?
- 29. bower install html5boilerplate iyi bir şey mi?
- 30. İyi kitapların veya iyi makalelerin çoğaltılmasının öğrenilmesi mi gerekiyor?
1 şaka, heh. – Bratch