User Name Password Register
DaniWeb IT Discussion Community
All
What is DaniWeb IT Discussion Community?
You're currently browsing the Database Design section within the Web Development category of DaniWeb, a massive community of 423,610 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 3,181 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our Database Design advertiser: Programming Forums
Views: 1493 | Replies: 1
Reply
Join Date: Aug 2007
Posts: 1
Reputation: rwagner is an unknown quantity at this point 
Rep Power: 0
Solved Threads: 0
rwagner rwagner is offline Offline
Newbie Poster

Question DB design for friends network

  #1  
Aug 23rd, 2007
I am building a site for which I would like to add a "friends" invitation system. Once member invites another to be a friend, the second member has to accept to become friends. So both members have to agree to be friends.

My problem is that I can't think of a db schema that will allow me to do this without being redundant or requiring multipe requests to get a list of friends.

This is what I've come up with so far:

Table: Users
- userID
- (etc)

Table: Friends
- fromID
- toID

So if user1 invites user2, there is an entry in Friends where fromID=user1 and toID=user2. When user2 accepts, an entry is added to Friends where fromID=user2 and toID=user2. Now that they've both "invited" each other, they are friends. But now I have two rows for every friend relationship and have to do two queries to see who user1's friends are.

I'm a decent programmer and a good UI designer, but a novice db designer at best. I could use some recommendations. Thanks.
AddThis Social Bookmark Button
Reply With Quote  
Join Date: Aug 2007
Location: Argentina
Posts: 76
Reputation: martin5211 is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 6
martin5211's Avatar
martin5211 martin5211 is offline Offline
Junior Poster in Training

Re: DB design for friends network

  #2  
Aug 23rd, 2007
yes, right logic. Also you can add a field in Users table to add friends separated by comma, you could use then explode function to separate the array and find again each user to find correlations. I think your solution is the best choice.
Reply With Quote  
Reply

Only community members can participate in forum threads. You must register or log in to contribute.

DaniWeb Database Design Marketplace
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)

 

Thread Tools Display Modes

Similar Threads
Other Threads in the Database Design Forum

All times are GMT -4. The time now is 8:44 pm.
Forum system based on vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
©2003 - 2008 DaniWeb® LLC