What is the best practice for storing data?

  • 6 October 2017
  • 1 reply
  • 1 view

I am creating a Request for Testing project. In this project, instructors fill in a form asking for a test to be proctored in our testing center. I started with two smartbox objects; one for storing the information about the test and the other to store information about the students who are allowed to take the test (similar to the sales order exercise in K2 learning). I thought this was the best way to go because if an instructor wanted to change the deadline for the test, it would only need to be done once and will change for all students with the same testID. However, I ran into issues trying to load the information for a test and include all the students allowed to take it. I was also unable to figure out how to look up a student and display information about all the tests that student was entitled to take. What I eventually did was take the two smartbox objects and create one composite smartbox object using K2 studio. It appears to work well, but now I have three smartbox objects. Is this the best way to do this project, or is there a more efficient way?


1 reply

Badge +9

Your scenario describes a many to many relationship between Students and Tests, so having a third table to link the two different tables is the proper way of storing it like so:


 


Students:


StudentID,


Name,


...


 


Tests:


TestID,


Name,


...


 


Students_Tests:


StudentID,


TestID


 


It would seem that your composite smartobject does the same thing as the Students_Tests table, so you're all good on that.


 


Hope this helps.


 

Reply