Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 General SQL Server Forums
 Database Design and Application Architecture
 DB for own study

Author  Topic 

Jim Beam
Posting Yak Master

137 Posts

Posted - 2011-02-07 : 18:12:29
Hi all,

I'm putting together a database to track my progress in Bodybuilding. I train a variety of bodyparts 4x a week, using a variety of movements, wish to enter my progress 4 number of times per week (therefore 4 extra rows). A bit later I'll want to insert front end app, possibly remotely, and create a Sproc for the insert.

So far it's a very simple 3 table affair, with a many-to-many relationship between movements (exercises) and bodyparts, ie more than 1 bodypart can be worked by more than one movement, and more than one movement can be used to train one bodypart.

I'll update this opening post in a while with some sample data, any opinions meanwhile welcome.

Use Bodybuilding
Go

--Create junction tables
Create Table Bodypart --Junction table for bodypart data
(
BodypartID Int,
Bodypart Char,
Constraint PK_BodypartID Primary Key Clustered (BodypartID)
)

Go

Create Table Movement --Junction table for data on specific exercises
(
MovementID Int,
Movement Char
Constraint PK_MovementID Primary Key Clustered (MovementID)
)
Go

--Create main OLTP repository for daily inserts+analysis/reporting
Create Table Strength --Tracks weekly progress
(
Date Datetime default(getdate()),
BodyPartID Int REFERENCES Bodypart (BodypartID),
MovementID Int REFERENCES Movement (MovementID),
Weight Int,
Sets Int,
Repetitions Int,
TotalRepetitions Int,
CONSTRAINT PK_Date PRIMARY KEY CLUSTERED (Date)
)



jezemine
Master Smack Fu Yak Hacker

2886 Posts

Posted - 2011-02-08 : 00:44:25
I happen to know the former DBA of bodybuilding.com. He's a customer of mine. not sure if that's any use to you or not - I can put you in touch with him if you like.


elsasoft.org
Go to Top of Page
   

- Advertisement -