phpbar.de logo

Mailinglisten-Archive

Create Index

Create Index

Michael Bergbauer mysql_(at)_lists.phpcenter.de
Thu, 12 Jul 2001 18:23:53 +0200 (CEST)


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