Son haftalık toplantımızda, Veritabanı Yönetimi'nde arka plan deneyimi olmayan bir kişi şu soruyu gündeme getirdi:
"Verileri birkaç satır yerine satır içi (dize) depolamayı haklı kılacak bir senaryo var mı?"
countryStatesBir ülkenin eyaletlerini depolamak istediğimiz yerde bir tablo varsayalım ; Bu örnek için ABD'yi kullanacağım ve tembellik uğruna tüm Devletleri listelemeyeceğim.
Orada iki sütunumuz olacaktı; biri aradı Country, diğeri aradı States. Tartışıldığı gibi burada ve @ srutzky en önerdiği yanıt , PKtarafından tanımlanan kod olacak ISO 3166-1 alfa-3 .
Masamız şöyle görünür:
+---------+-----------------------+-------------------------------------------------------+
| Country | States | StateName |
+---------+-----------------------+-------------------------------------------------------+
| USA | AL, CA, FL,OH, NY, WY | Alabama, California, Florida, Ohio, New York, Wyoming |
+---------+-----------------------+-------------------------------------------------------+
Aynı soruyu bir arkadaş geliştiriciye sorduğunda, veri trafiği boyutu açısından, bunun yararlı olabileceğini, ancak bu verileri manipüle etmemiz gerekiyorsa değil dedi. Bu durumda, uygulama kodunda bu dizeyi bir listede dönüştürebilecek bir zeka olması gerekir (diyelim ki bu tabloya erişimi olan yazılımın birleşik giriş kutusu oluşturması gerekir).
Bu modelin çok kullanışlı olmadığı sonucuna vardık, ancak bunu faydalı hale getirmenin bir yolu olabileceğinden şüphelendim.
Sormak istediğim, herhangi birinizin böyle bir şeyi gerçekten işe yarayacak bir şekilde görmüş, duymuş veya yapmış olup olmadığıdır .
a;b;c, sonra dize sizi ayrıştırmak almak için kullanıcı arabirimi kullanmasını a, b, cbelki onlarla bir şeyler yapıyor yürütme ve carry ?. Bu tarzda bir tür özel ihtiyaca uygun olabileceğini hissedin ... İkinci düşüncede hayır. Her zaman kimlikleri depolayabilir, tablolarınıza katılabilir ve