簡體   English   中英

需要動態構建 forms 的應用程序的最佳 MySQL 架構?

[英]Best MySQL schema for an app that requires dynamically-built forms?

我正在為一家在現場記錄數據的公司制作 web 應用程序。

他們需要能夠創建自己的 forms,然后技術人員將在工作現場現場填寫。 每個工作地點都與下一個不同,因此公司需要能夠隨意創建新的 forms。

數據可以是文本的或數字的,並且是網格狀的——比較不同的設備,例如:

Report #234 for Job Site 1

            EquipmentA  EquipmentB  EquipmentC
Condition   Fair        Good        Excellent
AZ425 Level 100 (ml)    84 (ml)     75 (ml)
Runtime     134 (hr)    400 (hr)    50 (hr)
Comment     Supply XX is running low.

============================

Report #3 for Job Site 2

            TankA       TankB
G00 Level   40%         10%     
Weight      500 (kg)    1000 (kg)   
pH          8.12        1.35
Visual Ins  Tank A has a crack near the bottom

我打算使用 CakePHP/MySQL

對於這種情況,最好的 MySQL 模式是什么(或者 XML 更有意義)?

到目前為止,這是我正在使用的:

Table 'Forms'
Cols: id, ref_number, job_site (fk), description, creation_date

Table 'Form_Controls'
Cols: id, form_id (fk), type (text, numeric, select), options (serialized data for dropdown list if a type 'select'), metric (hour, ml, kg, etc)

Table 'Form_Instance'
Cols: id, form_id (fk), technician (fk), creation_date

Table 'Form_Data'
Cols: id, control_id (fk), instance_id (fk), value, comparator (EquipmentA / EquipmentB, etc)

這是這種情況下最有效的模式嗎?

看起來實體-屬性-值模式在這里可能會派上用場。 它可以在 MySQL 等數據庫中輕松建模

這聽起來像是鍵值對或面向文檔的數據存儲可能更好的事情。 許多所謂的 NoSQL 數據庫可供選擇,但也許MongoDB可能是一個不錯的起點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM