Søren skrev:
> Jeg har en tabel, som jeg har en masse data i og derfor helst
> ikke vil slette. Jeg skal dog ændre den primære nøgle i
> tabellen.
Hvad er årsagen til at du vil ændre primærnøglen?
> Jeg skal ændre primær nøglen fra at være 'varenr' til at være
> 'varegruppe' - det betyder, at 'varegruppe' ændrer status fra
> at være sekundær nøgle til at være primær nøgle.
Det vil betyde at du så kun kan have ét styk tilbehør fra hver
varegruppe i tabellen - er det det du er ude efter?
Hvis tabellen skal indeholde information om de varegrupper du har,
er det korrekt nok at gøre varegruppe til primærnøgle - men det
indebærer at du gør fabrikant, model, pris (og alle andre felter i
tabellen) direkte afhængige af varegruppen. Det lyder ikke
umiddelbart sandsynligt.
> Først vil jeg slette primær og sekundær nøgle
>
> DELETE FROM tilbehoer
> WHERE primary key = ´varenr´
No go (med forbehold for mærkværdige mysql-kontruktioner). DELETE
er en kommando der sletter poster (rækker) i tabellen - jeg antager
at du er ude efter en kommando der fjerner et felt (en kolonne).
Det er i givet fald:
ALTER TABLE tilbehoer DROP COLUMN varenr;
- du skal dog muligvis droppe din nøglecontraint først. Men som
nævnt ovenfor, tror jeg slet ikke du skal ændre din primærnøgle.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på
http://usenet.dk/netikette/citatteknik.html