I need to create 3 database tables: Male Names, Female Name and Surnames. Each of these tables will have exactly the same fields: Name, Frequency, and Rank. What's the best way to implement this in C# / .NET?

1) Create 3 tables within the same database and give each the same fields. Probably the easiest to do initially but it would result in 3 separate schema.

2) Create a single table and save the data in 3 separate database files. Connection strings are easy enough to change at runtime, but this seems a bit extreme.

3) Put all data into a single table and add a field to specify what type of name it is. This will slow down searches and it also means I can't use rank as the primary key, should I want to.

4) A better method that I don't know about yet.

Cheers!