Hey everybody, it's been a while since I've been on Daniweb lol but I'm back and I need some advice from anybody willing to help. I'm writing my dad a program to help him catalog his 10's of thousands, no exaggeration, of football cards. The information he wants stored in it is: "card number", "year of card", "team of player", "name of player", and "card comp". I'm trying to figure out the best way to set up the DB with as little redundancy as possible and hitting a brick wall. I'd like to get the DB set up first because the coding part is easy for me. I started with just an excel document to try to visualize what I'm putting into the DB, and that looks like:

Card # Year Team Player Card Comp
211 1989 Dolphins John Bosa NFL ProSet

Now where I'm hitting a wall is in the fact that I don't know if it's too redundant to have the team listed numerous times and the card comp listed numerous times. Then I thought make a table for each and have a TeamID and a CompID but that just replaces the multiple names with multiple numbers.

New question with this same project is, where could I find the best example of live seraching code? Such as for this program when you go to my search page if you choose the teams from the list in the database the table will auto-filter out everything but what you chose in real time?

If anybody can help me with stuff I'd really appreciate it.

You do want tables for Team and Card Comp with IDs linking from the main record. ID (a number) is at most 4 bytes. A team name can be much longer and you'll save space. Also, if you tell the database to index on the ID field, searches will be a lot faster than trying to match a text string.

If you use a dataset to hold the relevant info, when the user changes the filter criteria you can:
- Fill it with an adhoc query or
- Create a DataRowView agains the relevant datatable to filter the required data or
- Use a Linq expression to select the relevant info.

Another possibility is that you use a datareader created from a command with an adhoc query to obtain the data.

Hope this helps.