How to Create a Database Proxy Feature for a Student Info System?

0
9
Asked By CuriousCoder72 On

I'm working on a free and open-source student information system and I'm trying to implement a feature similar to a database proxy. This would allow faculty to perform their usual tasks without immediately committing changes to the database, essentially creating a temporary layer for their input. The idea is that an admin would enable this layer so faculty can update information, and then the admin can merge those updates later, keeping the database unaware of any potential issues until it's ready to be finalized. I'm considering using a Proxy table to store changes with details like table_id, row_id, field_name, and new_value. Any suggestions on this concept?

3 Answers

Answered By DatabaseDynamo On

Creating a proxy table sounds like a solid approach! You might want to look into the Entity-Attribute-Value (EAV) model for this, as it can help manage the dynamic nature of your data. Alternatively, consider building a specific proxy table for each primary table you need this for. This would allow you to add additional fields like who entered the data and when, which could be useful for tracking and merging later.

Answered By CodeNinja On

It seems like you're describing a branching feature! Some database platforms like PlanetScale offer this functionality which allows for easier management of changes. However, integrating that into your system might be tricky. What's your primary use case—are faculty making changes for development purposes, or are they doing it for the students?

Answered By TechWhiz01 On

You could also add a 'pending approval' boolean column. Use a table for approvers with their user IDs and keep track of who validates changes and when. Then, run daily reports on changes needing approval along with authorization logs for transparency. That might help streamlining the process!

Related Questions

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.