Results 1 to 4 of 4
  1. #1
    fixittech is offline Novice
    Windows Vista Access 2007
    Join Date
    Dec 2009
    Posts
    2

    In over my head with a database class

    Okay, so here's the long story short. I'm taking a database fundamentals class. It's an intro class, and should be pretty low brow stuff, but I am struggling so much, I'm afraid I'm going to bomb the class. I was kinda hoping to get a little boost from people who know what the heck this guy is talking about! I'd like to give you all the information I have and then present my questions. I'd also like to make clear, I am -=not=- looking for anyone to solve this stuff for me. I just need some feedback.

    So the problem we've been given is to design a database with 65 employees which reflect updated information about certifications and education, and vendors the company uses. So I've come up with some basic tables. 3, actually, one that contains employee information, one that contains certification information (since conceivably one can have more than one certification), and one that contains vendor information.

    Employee Entity:



    Code:
    Emp ID	Last Name	First Name	Address	Date of Birth	Date of Hire	Degree	College	Date of Termination
    1	Smith	Sally	1234 Main Street	7/30/1979	2/3/2004	A.S.	CTU	4/30/2009
    2	Doe	John	321 Seseme St	8/21/1981	5/7/2008	B.S	UCCS
    Certification Entity:
    Code:
    EmpID	Last Name	First Name	Certification	Type	Date	Expiration
    1	Smith	Sally	CPR	Medical	5/9/2004	5/9/2005
    2	Doe	John	CPR	Medical	6/1/2009	6/1/2010
    Vendor Entity:
    Code:
    VendID	Name	Address	VendType
    1	Rotors Etc	1234 South Main Street	Mechanical
    So, my next step here is to confirm that the tables conform to 1NF, 2NF, and 3NF. I guess my first question is with my Certifications table. The idea is that I am supposed to be able to design a database that can be flexible enough to adapt to changing certifications and additions of certifications. How can I make a table like that without creating a possible exponential amount of little tables? And how would I reflect one person holding more than one certification? I think I am good with the 1NF, but what about the 2NF?

    I hope I have given enough information here about my problem. I appreciate any help anyone could offer.

    FT

  2. #2
    RuralGuy's Avatar
    RuralGuy is offline Administrator
    Windows XP Access 2002
    Join Date
    Mar 2007
    Location
    8300' in the Colorado Rocky Mountains
    Posts
    12,922
    In the certification table you only need the EmployeeID field as a ForeignKey (FK). You do not need their name. Since this field is a FK and not the PrimaryKey (PK) of this table, you can have as many records as needed for the various certifications of each employee. This table would have a 1:m relationship with the Employees table.

  3. #3
    fixittech is offline Novice
    Windows Vista Access 2007
    Join Date
    Dec 2009
    Posts
    2
    You are awesome! Thanks for the boost. I still may not understand this stuff (I'm more of a electrician than a DBA), but there may be hope for me yet!

  4. #4
    carlmdobbs is offline Novice
    Windows XP Access 2007
    Join Date
    Jan 2010
    Location
    Maryland
    Posts
    26

    Carl Matthew Dobbs has the answer for you.

    The answer to your specific question about changing certifications and addition of certifications: You need a list table that records all of the different certifications that are in existence now and that allows additions to be made for the table. If a person needs more than one certification you need what is called a "reference table." This is a table which makes a many-to-many relationship between a particular person who needs the certs and the certifications he/she obtains. This way any number of certifications can be assigned to that student. (P.S. MS Access 2007 has the ability to automatically make this relationship for you by giving you a list box where you can assign any number of items to the list. This is an easy way to do it but real professionals do it the old fashion way for very important reasons. MS Access "wizards" almost always have a serious downside for programmers.)
    I hope this helps but we really need to talk. Again, free advice.

Please reply to this thread with any new information or opinions.

Similar Threads

  1. Database Design for Specification Database
    By khwaja in forum Database Design
    Replies: 2
    Last Post: 11-24-2011, 03:58 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Other Forums: Microsoft Office Forums