Si j'ai bien compris, log
sert à enregistrer automatiquement les détails des actions de l'utilisateur et le profile
détient les détails de l'utilisateur.
Pour le log
table, vous semblez essayer de conserver des données résumées, qui devraient être mises à jour à chaque soumission de formulaire. Je vous suggérerais simplement d'insérer une nouvelle entrée de journal [par ex. log_id
, log_date
, profile_id
, amount
] lors de la soumission et laisser l'agrégation au rapport. Pour activer la jointure depuis log
au profile
, nous incluons profile_id
.
Pour le profile
table, vous devriez probablement autoriser les entrées en double de first_name
|last_name
|dob
et essayez de trouver un autre moyen de les rendre uniques (soit en utilisant profile_id
, ou par mail, ou n° de passeport).
Je ne suis pas sûr de vos intentions pour rowone
, rowtwo
, rowthree
. Si vous savez ce qu'ils sont, alors nommez-les explicitement; s'il s'agit d'éléments qui se répètent un nombre de fois inconnu, envisagez de les déplacer vers un tableau séparé (c'est-à-dire de les normaliser).
Pour votre rapport, vous rédigerez ensuite une requête pour rejoindre le log
et profile
tables ensemble, avec agrégation (c'est-à-dire GROUP BY
avec SUM
et/ou COUNT
sur les champs nécessaires. "Nombre de visites" serait le COUNT
des entrées de journal pour ce profil, "Amount" serait le SUM
du amount
.