SORU
24 EYLÜL 2008, ÇARŞAMBA


İlişkisel veritabanında anahtar değer çiftleri

Birisi bir veritabanında anahtar-değer çiftleri depolamak deneyimi var mı?

Tablo bu tür kullanıyorum:

CREATE TABLE key_value_pairs ( 
    itemid           varchar(32) NOT NULL,
    itemkey         varchar(32) NOT NULL,
    itemvalue       varchar(32) NOT NULL,
    CONSTRAINT ct_primarykey PRIMARY KEY(itemid,itemkey)
)

Örneğin aşağıdaki satır var ki:

 itemid            itemkey        itemvalue    
 ----------------  -------------  ------------ 
 123               Colour         Red            
 123               Size           Medium             
 123               Fabric         Cotton

Bu program ile bu sorun SQL sözdizimi oldukça karmaşık veri ayıklamak için gereklidir. Sadece anahtar/değer sütun bir dizi oluşturmak için daha iyi olurdu?

CREATE TABLE key_value_pairs ( 
    itemid            varchar(32) NOT NULL,
    itemkey1        varchar(32) NOT NULL,
    itemvalue1      varchar(32) NOT NULL,
    itemkey2        varchar(32) NOT NULL,
    itemvalue2      varchar(32) NOT NULL,
 . . .etc . . .
)

Bu sorgu için daha kolay ve daha hızlı olacak ama ilk yaklaşım uzama yoksun. Herhangi bir tavsiye?

CEVAP
24 EYLÜL 2008, ÇARŞAMBA


Yaklaşımınız devam etmeden önce, alçakgönüllü, geri adım ve eğer gerçekten "Anahtar-Değer Çifti"tablo. bu verileri saklamak istiyorsanız düşünün öneririm Bilmiyorum, uygulamanızı ama benim deneyimim var gösterilen her zaman var ne yapıyorsun, daha sonra ben keşke oluşturulmuş bir renk tablosu, kumaş masa ve boyut tablosu.

Düşün tutarlılığı kısıtlamaları,-değeri anahtar çifti yaklaşım, veritabanı boyutu bir alanda renkli bir kimliği saklamak için çalışırken söyleyemem

10 değerleri ile birden çok etki alanları arasında değerler binlerce olabilir, bir genel bir değer ile bir masaya katılma performans yararları hakkında düşünüyorum. Ne kadar yararlı Anahtar Değeri üzerinde bir dizin gerçekten olacak mı?

Genellikle ne yapıyorsan etki gerekir, çünkü arkasındaki mantık "kullanıcı tanımlı". Bu durumda da o zaman bile ise anında uygun bir yaklaşım olmakla birlikte () tablo oluşturma yolunda seni zorlayacak değilim.

Ancak, eğer sizin muhakeme olduğunu düşünüyorsun çünkü bu daha fazla yönetmek için birden çok tablo veya çünkü öngören bir bakım kullanıcı arayüzü bu jenerik için tüm etki, o zaman dur ve düşün gerçekten zor önce devam ediyorsun.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Canceriansoul

    Canceriansou

    15 Ocak 2011
  • TotalxLuna

    TotalxLuna

    27 Kasım 2011
  • TSE

    TSE

    12 Kasım 2012