|
| Sletning af rækker i flere tabeller [MySQL~ Fra : Kasper Kristensen |
Dato : 19-08-03 22:08 |
|
Howdy.
Jeg har flere tabeller, lad os kalde dem t1,t2,...,t4 som alle har et felt
kaldet caseid. Jeg vil nu lave en SQL-query som sletter alle rækker med et
bestemt caseid f.eks = 12:
delete t1,t2,t3,t4 from t1,t2,t3,t4 where t1.caseid=12 AND t2.caseid=12 AND
t3.caseid=12 AND t4.caseid=12.
Men kan det virkelig ikke gøres simplere? Skriver jeg f.eks. bare "where
caseid=12" giver det en fejl med "caseid...ambiguous".
mvh.
Kasper
| |
Johan Holst Nielsen (19-08-2003)
| Kommentar Fra : Johan Holst Nielsen |
Dato : 19-08-03 15:15 |
|
Kasper Kristensen wrote:
> Howdy.
>
> Jeg har flere tabeller, lad os kalde dem t1,t2,...,t4 som alle har et felt
> kaldet caseid. Jeg vil nu lave en SQL-query som sletter alle rækker med et
> bestemt caseid f.eks = 12:
>
> delete t1,t2,t3,t4 from t1,t2,t3,t4 where t1.caseid=12 AND t2.caseid=12 AND
> t3.caseid=12 AND t4.caseid=12.
>
DELETE FROM t1, t2, t3, t4 WHERE t1.caseid = 12 AND t2.caseid =
t1.caseid AND t3.caseid = t1.caseid AND t4.caseid = t1.caseid;
mvh
Johan
| |
Kasper Kristensen (20-08-2003)
| Kommentar Fra : Kasper Kristensen |
Dato : 20-08-03 17:15 |
|
"Johan Holst Nielsen" <johan@weknowthewayout.com> wrote in message
news:3F4230E9.3010408@weknowthewayout.com...
>
>
> Kasper Kristensen wrote:
> > Howdy.
> >
> > Jeg har flere tabeller, lad os kalde dem t1,t2,...,t4 som alle har et
felt
> > kaldet caseid. Jeg vil nu lave en SQL-query som sletter alle rækker med
et
> > bestemt caseid f.eks = 12:
> >
> > delete t1,t2,t3,t4 from t1,t2,t3,t4 where t1.caseid=12 AND t2.caseid=12
AND
> > t3.caseid=12 AND t4.caseid=12.
> >
>
> DELETE FROM t1, t2, t3, t4 WHERE t1.caseid = 12 AND t2.caseid =
> t1.caseid AND t3.caseid = t1.caseid AND t4.caseid = t1.caseid;
>
> mvh
> Johan
>
Øv, det er sgu lidt bøvlet, hvis man har 8 tabeller. Men tak for svaret.
Kasper.
| |
Johan Holst Nielsen (20-08-2003)
| Kommentar Fra : Johan Holst Nielsen |
Dato : 20-08-03 08:43 |
|
Kasper Kristensen wrote:
> Øv, det er sgu lidt bøvlet, hvis man har 8 tabeller. Men tak for svaret.
>
Hvilket database bruger du?
Såfrem du bruger f.eks. MySQL med InnoDB burde du måske kigge på foreign
keys så... ville gøre livet meget nemmere for dig ;)
mvh
Johan
| |
Kasper Kristensen (20-08-2003)
| Kommentar Fra : Kasper Kristensen |
Dato : 20-08-03 17:57 |
|
"Johan Holst Nielsen" <johan@weknowthewayout.com> wrote in message
news:3F43269A.9050505@weknowthewayout.com...
> Hvilket database bruger du?
> Såfrem du bruger f.eks. MySQL med InnoDB burde du måske kigge på foreign
> keys så... ville gøre livet meget nemmere for dig ;)
>
> mvh
> Johan
>
Desværre benytter jeg MyISAM. Det er et designvalg som ikke er truffet af
mig, så spørg ikke hvorfor.
Men jeg tror lige jeg vil bruge en times tid til at kigge på fordelene ved
InnoDB tabeller. Så kan jeg jo træffe et bedre valg næste gang.
Kasper
| |
Jens Gyldenkærne Cla~ (20-08-2003)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 20-08-03 09:21 |
|
Kasper Kristensen skrev:
> Men jeg tror lige jeg vil bruge en times tid til at kigge på
> fordelene ved InnoDB tabeller. Så kan jeg jo træffe et bedre
> valg næste gang.
Kan du lokkes til at kigge på dit computerur (eller rettere, på
dine indstillinger for tidszonen). Prøv at sammenligne
datoangivelsen på dit indlæg:
Date: Wed, 20 Aug 2003 09:56:33 -0700
- med den tilsvarende dato i Johans indlæg:
Date: Wed, 20 Aug 2003 09:43:22 +0200
Dansk sommertid er +2 timer (+0200) i forhold til GMT. Med din
tidszoneangivelse ser det ud som om dit indlæg er skrevet i dag kl.
18:56.
--
Jens Gyldenkærne Clausen
Greenwich nedrig gang: Ny Delhi (GMT +5.5), Badutspring By (GMT
+2), Ny York (GMT 5), Høns (GMT 6), Los Engel (GMT 8)
(Fra < http://www.paris-tours-guides.com/index_danish.shtml>)
| |
Kasper Kristensen (20-08-2003)
| Kommentar Fra : Kasper Kristensen |
Dato : 20-08-03 10:11 |
|
"Jens Gyldenkærne Clausen" <jens@gyros.invalid> wrote in message
news:Xns93DD6936AB986jcdmfdk@gyrosmod.dtext.news.tele.dk...
>
> Kan du lokkes til at kigge på dit computerur (eller rettere, på
> dine indstillinger for tidszonen). Prøv at sammenligne
> datoangivelsen på dit indlæg:
>
Ups, beklager. Har for nylig geninstalleret Windows, og tidzoneindstillingen
må været smuttet. Mærkeligt at ingen har gjort mig opmærksom på det før.
Kasper
| |
|
|