You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Leaving this issue open for the future, but currently the database schema is rather monolithic. This was an intended decision in the beginning of this projects life, however there is definitely room for abstraction if desired and would be my recommendation in the future. This was initially mimicking another database schema which was more alike spesql's currently. I think an ideal restructure would be:
<labname>Table
There would be multiple tables, where it references a single lab groups data. This would mainly hold the cataloging information (catalogNumber, projectNumber, notes, etc), as well as hold references to corresponding tuples in the other tables
taxonomies
This would hold on to all taxonomic data, as to be reused.
localities
this would hold on to location data for a tuple in one of the lab tables
loans
this would hold the loan status information for a given catalogNumber
.... etc ....
The UI would thankfully remain mostly the same, its mainly the backend logic and query generation behind the scenes that would need some restructuring. There are many routes to take, but one would be the option to toggle the automatic joining/loading in relations for all queries, so that functionally it feels the same to use the application.
A general rough replacement could be something like (I didn't take the time to add any cascade actions and skipped some of the fields but):
Leaving this issue open for the future, but currently the database schema is rather monolithic. This was an intended decision in the beginning of this projects life, however there is definitely room for abstraction if desired and would be my recommendation in the future. This was initially mimicking another database schema which was more alike spesql's currently. I think an ideal restructure would be:
<labname>Table
There would be multiple tables, where it references a single lab groups data. This would mainly hold the cataloging information (catalogNumber, projectNumber, notes, etc), as well as hold references to corresponding tuples in the other tables
taxonomies
This would hold on to all taxonomic data, as to be reused.
localities
this would hold on to location data for a tuple in one of the lab tables
loans
this would hold the loan status information for a given catalogNumber
.... etc ....
The UI would thankfully remain mostly the same, its mainly the backend logic and query generation behind the scenes that would need some restructuring. There are many routes to take, but one would be the option to toggle the automatic joining/loading in relations for all queries, so that functionally it feels the same to use the application.
A general rough replacement could be something like (I didn't take the time to add any cascade actions and skipped some of the fields but):
One hiccup that prevented me from doing this during the TypeScript rework was that UFIT did not allow actions or triggers for some reason.
The text was updated successfully, but these errors were encountered: