webForumDet fria alternativet

Krångel vid byte av tabell för främmande nyckel

Databaser & SQL

1 svar · 254 visningar · startad av aasah

Medlem sedan mars 20034 471 inlägg
Frågan#1

Sedan tidigare har jag lagrat all korsordsinformation i en tabell som vi kan kalla för OLDCW. CWid är primärnyckel. Kopplad till denna tabell finns bl.a. en Resultattabell RESULT som innehåller:
((CWid, Userid) resultat)
CWid är definierad som foreign key till OLDCW.

I samband med att jag totalt skrivit om mina korsordsskript så har jag radikalt förbättrat den lagrade informationen, så att den är betydligt mer lättanvänd. Nu har jag således en ny tabell NEWCW, där samma korsord har lagrats "igen" fast på ett bättre sätt. Även i den nya tabellen är CWid primärnyckel och CWid=x kommer att plocka ut samma korsord i bägge tabellerna.

Dock har jag inga planer på att behålla OLDCW (så snart mina nya skript funkar fullt ut). Alltså skulle jag vilja ändra foreign key kravet i RESULT till att i stället referera till NEWCW.

Är detta möjligt, utan att kompromettera redan lagrad info och hur gör man i så fall på bästa sätt? Jag känner inte för att prova mig fram eftersom det ligger riktiga data i RESULT-tabellen.

Jag använder MySQL 5.0.22.

Medlem sedan dec. 200012 464 inlägg
#2
alter table result drop constraint <constraintName>

namnet kan du få genom att använda lämplig vy i INFORMATION_SCHEMA

alter table result add constraint ...
254 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)