Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 58933
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 10, 20262026-05-10T17:55:33+00:00 2026-05-10T17:55:33+00:00

I’m working on an upgrade for an existing database that was designed without any

  • 0

I’m working on an upgrade for an existing database that was designed without any of the code to implement the design being considered. Now I’ve hit a brick wall in terms of implementing the database design in code. I’m certain whether its a problem with the design of the database or if I’m simply not seeing the correct solution on how to what needs to be done.

The basic logic stipulates the following:

  1. Users access the online trainings by way of Seats. Users can have multiple Seats.
  2. Seats are purchased by companies and have a many-to-many relationship with Products.
  3. A Product has a many-to-many relationship with Modules.
  4. A Module has a many-to-many relationship with Lessons.
  5. Lessons are the end users access for their training.
  6. To muddy the waters, for one reason or another some Users have multiple Seats that contain the same Products.
  7. Certification takes place on a per Product basis, not on a per Seat basis.
  8. Users have a many-to-many relationship with lessons that stores their current status or score for the lesson.
  9. Users certify for a Product when they complete all of the Lessons in all of the Modules for the Product.
  10. It is also significant to know when all Lessons for a particular Module are completed by a User.
  11. Some Seats will be for ReCertification meaning that Users that previously certified for a Product can sign up and take a recertification exam.
  12. Due to Rule 11, Users can and will have multiple Certification records.
  13. Edit: When a User completes a Lesson (scores better than 80%) then the User has (according to the current business logic) completed the Lesson for all Products and all Seats that contain the Lesson.

The trouble that I keep running into with the current design and the business logic as I’ve more or less described it is that I can’t find a way to effectively tie whether a user has certified for a particular product and seat vs when they have not. I keep hitting snags trying to establish which Products under which Seats have been certified for the User and which haven’t. Part of the problem is because if they are currently registered for multiple of the same Product under different Seats, then I have to count the Product only once.

Below is a copy of the portion of the schema that’s involved. Any suggestions on how to improve the design or draw the association in code would be appreciated. In case it matters, this site is built on the LAMPP stack.

You can view the relevant portion of the database schema here: http://lpsoftware.com/problem_db_structure.png

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-10T17:55:34+00:00Added an answer on May 10, 2026 at 5:55 pm

    What you’re looking for is relational division Not implemented directly in SQL, but it can be done. Search google for other examples.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 157k
  • Answers 157k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer This page: http://erlang.org/doc/highlights.html ...lists hightlights of release 5.7/OTP R13A. Note… May 12, 2026 at 11:00 am
  • Editorial Team
    Editorial Team added an answer Answer replaced (and turned Community Wiki) due to numerous updates… May 12, 2026 at 11:00 am
  • Editorial Team
    Editorial Team added an answer No, it's a reference to the same immutable instance. This… May 12, 2026 at 11:00 am

Related Questions

I ran into a problem. Wrote the following code snippet: teksti = teksti.Trim() teksti
I am currently running into a problem where an element is coming back from
Seemingly simple, but I cannot find anything relevant on the web. What is the
Does anyone know how can I replace this 2 symbol below from the string
Configuring TinyMCE to allow for tags, based on a customer requirement. My config is

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.