Mailinglisten-Archive |
On 12-Jul-2001 Eric Beer wrote: > hi there >> > >> > welche Felder in einer DB sollte ich mit einem INDEX belegen ?? >> > >> >> Aufgrund langjähriger Erfahrungen empfehle ich dir einen "sauberen" >> DB-Design, wo du insbesondere alle PRIMARY und FOREIGN KEYS richtig >> definierst. > > der primärschlüssel ist mir ja noch klar. aber wozu sollte man > fremdschlüssel definieren? die relation zwischen den tabellen erzeuge ich ja > in der abfrage unter einbezug gleicher column-namen!? warum soll das ein Fremdschlüssel sein? Fremdschlüssel ist das, wo Fremdschlüssel dabei steht, und nicht weil es zufällig gleiche Spaltennamen sind. > falls ich damit richtig liege; ist das auch der grund, dass mysql > fremdschlüssel gar nicht unterstützt? Nein, sondern weil Fremdschlüssel nur dann Vorteile bringen, wenn ON {DELETE|UPDATE} {CASCADE|NO ACTION|SET NULL} unterstützen, weil dann die referentielle Integrität gewahrt bleibt. Allerdings kostet jede der Optionen entsprechende Rechenzeit, und ist nicht "unbedingt" erfoderlich, wenn man die Applikation entsprechend entwirft. Michael -- Michael Bergbauer <michael.bergbauer_(at)_gmx.net> Use your idle CPU cycles. See http://www.distributed.net and win $ 1 000. Visit our mud Geas at geas.franken.de Port 3333 --- !!NEU!! Fragen und Antworten zu MySQL und dieser Liste unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive