I recently asked this question: MS SQL share identity seed amongst tables (Many people wondered why)
I have the following layout of a table:
Table: Star
Just taking your idea of many tables - how can you realise that...
What about using dynamic queries.
Another direction in which I would make some researches is using xml typed column for storing stars data. The main idea here is if you need to operate stars only by categories than why not to store all stars of concrete category in one cell of the table in xml format. Unfortunately I absolutely cannot imaging what will be the performance of such decision.
Both this variants are just like ideas in brainstorm.