Ok, quindi era un'idea proprio assurda.

L'unico problema è che se in form_fields l'utente cancella un campo, poi nelle altre tabelle non si trova più il riferimento a quel campo. Quindi dovrei salvare non l'ID del campo ma tutte le altre informazioni(field_name, field_value etc...).
Ma poi non c'è troppa ridondanza?