Orijinal gönderide öne sürülen şema hususlarına yeterince zaman ayrıldığını sanmıyorum. İşte yeni başlayanlar için dikkate alınması gereken bir şey.
Diyelim ki devam ettiniz ve bu çözümü inşa ettiniz. Tüm temel değerleriniz tek bir değerde toplanır ve veritabanında saklanır. Veritabanınızda gerçekten [biraz] yer ve biraz zaman kodlaması kazanıyorsunuz.
Şimdi, mevcut onay kutuları 3 ve 4 arasına yeni bir onay kutusu ekleme görevini sık ve kolay bir şekilde gerçekleştirmeniz gerektiğini düşünelim. Geliştirme yöneticiniz, müşteriniz, bunun basit bir değişiklik olmasını beklerse.
Böylece, onay kutusunu kullanıcı arayüzüne eklersiniz (kolay kısım). Döngü kodunuz, kaç onay kutusu olursa olsun değerleri zaten birleştirirdi. Ayrıca, veritabanı alanınızın sadece bir varchar veya başka bir dize türü olduğunu anlıyorsunuz, bu yüzden de iyi olmalı.
Müşterileriniz veya siz değişiklikten önceki verileri görüntülemeye çalıştığınızda ne olur? Esasen soldan sağa diziliyorsunuz. Ancak, şimdi 3'ten sonraki değerlerin tümü 1 karakter farkla kapalıdır. Tüm mevcut verilerinizle ne yapacaksınız? Bir uygulama yazacak, hepsini veritabanından çıkaracak, yeni soru konumu için varsayılan bir değer eklemek üzere işleyecek ve ardından hepsini veritabanında depolayacak mısınız? Bir hafta veya bir ay arayla birkaç yeni değeriniz olduğunda ne olur? Ya konumları taşırsanız ve jQuery bunları farklı bir sırayla işlerse? Tüm verileriniz toplanır ve yeniden düzenlemek için yeniden işlenmesi gerekir.
Sıkı bir anahtar-değer ilişkisi SAĞLAMAMANIN tüm kavramı ludacris'tir ve başınızı belaya sokmaktan ziyade en kısa zamanda sonuçlanacaktır. Bunu düşünenler için lütfen yapma. Şema değişiklikleri için diğer öneriler gayet iyi. Bir alt tablo, ana tabloda daha fazla alan, soru-cevap tablosu vb. Kullanın. Bu verilerin yapısı değişebileceğinde, etiketsiz verileri saklamayın.