Veritabanı Tasarım - Diğer Sistemleri ile Uygulama Entegrasyonu

1 Cevap php

Şu anda benim app eski SalesForce.com dış uygulamaları entegre ediyorum. Benim soru düzgün özel alanları yakalamak veri tabloları tasarlama ilgilidir.

Yani Salesforce için tüm şirketler Organizasyon kimliği var ama sonra onlar da verileri yakalamak için özel alanlar olabilir. Ben bu işlemek için iki seçenek baktım.

  1. Bunların alanları bir dizi anahtar olarak adlarını seri onları yaratalım. Sonra bu diziye değerleri bağlamak ve serialize yeniden.
  2. Özel değerler (alan adları) için izin db 10 + sütun oluşturun ve sonra bu alanlara kullanıcıların verileri harita.

Bu yaklaşımların hangisi uzun vadede daha verimli ve sürdürülebilir mi?

1 Cevap

Bu bir kullanıcı başına veya tablo başına bu özel alanları gerek olmadığını sorunuza net değil. Bu tablo başına ise, o zaman ben ek alanları gerekli her tablo için bir "kardeş" tablo oluşturmak istiyorum. O ana tablo olarak aynı birincil anahtar sütunları, artı bir sıra numarası sütunu ve bir alan adı ve değeri için sütunları verin. Ben ikisini de karakter sütunları yapmak ve fiili alan türü için / dönüştürmek planlıyoruz, ancak her veri türü için ayrı bir sütun oluşturabilir ve yalnızca birini kullanmak istiyorsanız, lütfen çağrısı istiyorum. Eğer ana tablodan bir satır getirme zaman sonra, siz de kardeş tablodan aynı anahtar ile tüm satırlarını ve sıra numarası ile döndürülen sütunlar sipariş. Gerektiği gibi kardeş tabloya ek sütunlar ekleyebilirsiniz; örneğin, belirli alanların gerekli olduğunu belirtmek için bir bayrak eklemek isteyebilirsiniz.

Eğer ana tabloya eklenen her satır için kardeş tablodaki tüm girdileri oluşturmak istiyorsanız, o zaman ana tabloda özel bir anahtar ile bir "şablon" veya "prototip" satır var isteyebilirsiniz, bu nedenle kolayca alabilirsiniz tüm özel alanlar. Bu da, özel alanlar için varsayılan değerleri belirtmek sadece prototip girişleri onları saklamak için izin verir.