gut dann in echt:
table held {
integer id references einheit.id;
varchar(30) name;
integer erfahrung;
...
}
table gruppe {
integer id references einheit.id;
varchar(30) name;
....
}
table einheit {
integer id auto_increment;
}
und ich brauche eine neue tabelle, wie:
table hat_mitgekaempft {
integer id references einheit.id;
integer kid references kampf.kid;
}
jetzt wäre es eben umständlich 2x hat_mitgekämpft tabellen zu machen für jeweils held und gruppe; später solls auch clans geben -> daher die generalisierung.
blöd ist eben, dass ich nicht genau weiß, ob eine id aus der hat_mitgekämpft tabelle ein held oder eine gruppe ist, aber es bleiben ganz einfach 2 abfragen!
... hat_mitgekaempft NATURAL JOIN held ...
... hat_mitgekaempft NATURAL JOIN gruppe ...
wodurch ich mir meine frage schon fast beantwortet habe.. durch "generalisierung" werden zwar die tabellen weniger, aber die queries bleiben gleich viele
so werde ich das jedenfalls machen, glaub ich
danke für die große hilfe und denkanstöße - vielleicht konnt ich jemanden helfen!
ich wünschte, die großen db-hersteller würden sich trotzdem mal zu o.o.-db-systemen überreden lassen. die einfachheit bringt uns viel und ihnen viele kosten