Understanding how to design a database from 14 semi-related existing spreadsheets

Hi, many thanks in advance for any advice!

I’m new to Baserow - about 4 days - and I am trying to figure out how to best take 14 semi-related spreadsheets (that are maintained by various employees, and have data integrity issues that need to be fixed), for a nonprofit school in Cambodia, and put them into one (?) seamless relational database. I’m most unclear about whether I need several linked databases, or just one database with about 14, mostly unique, Tables. Here is how the flow goes for students:

Applicant > Student (if accepted) > Placed in 1 or 2 of 3 programs > Might drop out > Alumni (based on graduation) > then the Alumni student could take on these various roles for the next generation of students after graduation: Mentor, Donor, Internship host, Employer, Speaker, Volunteer, or Board of Directors. But, currently, while they are a student, they could could connect with these people (stakeholder groups) as I explain next.

And, completely unrelated individuals (not former students) could also take on the roles of: Mentor, Donor, Internship host, Employer, Speaker, Volunteer, or Board of Directors. - these are the separate spreadsheets we now have. (Yes, there are 6 more smaller student-related spreadsheets, but I will try to absorb them if I can get a good design figured out.) People in these roles all have non-student names and contact information and thus would NOT be listed with the students. But, like I said, they could intersect with students while they are still students. I don’t want to make a mess of names, phone numbers, emails, addresses, etc. by blending students with non-students.

So, my question is, do I create: One database with multiple tables (that would associate a person’s name to a particular table/role in the organization with other associated information) or separate, but linked, databases of STUDENTS (in all their progression), and then Mentor, Donor, Employer, Speaker, Volunteer, or Board of Directors?

Again, thank you!

  • j

Hi @Pacific_Guy ,
you are asking a legitimate and typical question to design a database. However, this is a question that is not specific to Baserow, but rather to any database you might use.
The term for answering your question is Database Normalization (Wikipedia)

It’s difficult to answer your question based on the information you’ve provided. At first glance, I think it should be one database with different tables, not separate databases.

You might find some helpful pages if you search for “database normalization” on the web.

Thank you, I appreciate you taking the time to look at my question and respond!