01. september 2002 - 20:35
Der er
4 kommentarer og
1 løsning
Foreign key i MySql
Er det rigtigt at MySql ikke understøtter foreign keys (fremmednøgler)?
Hvis ja, hvorfor?
prom.
01. september 2002 - 20:38
#1
ja, fordi de tror det giver dårlig performance.
Hvilket er lidt spøjs, eftersom Oracle understøtter det, og den er hurtigere.
01. september 2002 - 22:11
#2
Disky:
Kan MySql så bruges til noget som helst seriøst? Er MySql overhodet en relations database?
For at data skal være persistente, må et felt der er fremmednøgle i en anden tabel, jo aldrig ændre sig... eller hvad... Opfrisk lige min relations database teori...
Kan du anbefale at bruge MySql, eller har du et andet produkt du sværger til... sådan lidt ligesom Tomcat vs Resin :)
Det må gerne være gratis.
prom.
02. september 2002 - 07:36
#3
prom:
Selvfølgelig understøtter MySQL keys, MEN ikke foreign keys til at sikre data integritet.
Lad os sige du har 2 tabeller, hvor tabel A har en foreign key i tabel B.
Så forsøger du nu at slette en post i Tabel B, som en post i tabel A har en reference til, hvis MySQL havde understøttet det, havde det IKKE været muligt at slette posten i tabel B. Men det er MySQL totalt ligeglad med.
MySQL kan sagtens bruges til seriøse ting, så længe man ikke skal bruge avancerede database ting så som, stored procedures, triggers, views, foreign keys osv.
Så om man vil bruge MySQL er en vægtning af om man kan undvære disse ting eller ej, jeg bruger den selv, og kender flere store databaser der kører på MySQL, f.eks. flere dagblades artikel database. Men til f.eks. finansverdenen ville jeg ALDRIG bruge den, men derimod DB2 eller Oracle.
Hvis du vil have et gratis produkt som har de avancerede ting, er gratis, men underligt nok ikke særligt udbredt skal du kigge efter Postgres SQL, som oftest er en del af en standard linux installation.
p.s. Tomcat er noget lort, det er MySQL ikke :-)