I have to design a simple database, but things are harder than they appear. It's very simple to fall in a cycle relationship.
Users <---> categories <---> pictures
Users <---> pictures
In my opinion that design has a cycle relationship, could you help me solve this situation? Have you an idea?
I don't see a problem here.
If all of the relationships were in use for a query, it would probably be of the type "Show me the pictures in this user's categories that they have not yet viewed", which seems like a reasonable business case.
So you'd have a query that joins users to categories to picture, and checks for non-existence of a record in the "user_picutres_viewed" table for that picture and user.
Not a problem.