rij verwijderen

Status
Niet open voor verdere reacties.

willem008

Gebruiker
Lid geworden
28 sep 2007
Berichten
792
Goede dag.

ik ben nog maar net met msql bezig en snap even een ding niet

Ik heb een tabel gemaakt met daarin
artikel_id
naam
omsch
prijs

ik heb artikel_id de primare sleutel gegeven en auto-increment
dus elke keer wordt artikel_id met een verhoogt

als ik nu bijv 7 artikelen heb in gevoert ,en ik verwijder dan artikel _id 7
en ik voer weer een nieuw artikel in dan krijgt hij artikel_id 8

waarom wordt dat dan geen 7
 
Omdat 7 al geweest is. Als 7 is geweest, is de volgende 8, of je 'm nou verwijdert of niet. Zo hoort het ook, en probeer daar geen work-arounds voor te verzinnen, want dat wil je niet. :)
 
ok in ieder geval bedankt snap het nog niet maar ga wel verder zoeken op internet.
 
Omdat er wellicht nog andere dingen in andere tabellen gekoppeld zijn met de rij met ID 7 wordt deze nooit opnieuw aangemaakt.

Je wilt dit ook helemaal niet. Ga er maar vanuit dat je eigenlijk geen dingen weg hoeft te gooien in een database, maar op non-actief zet. Dan heb je altijd een history van de data
 
Omdat er wellicht nog andere dingen in andere tabellen gekoppeld zijn met de rij met ID 7 wordt deze nooit opnieuw aangemaakt.

Dan heb je een verrot databasemodel.
 
Dan heb je een verrot databasemodel.

Dat lijkt me niet. Een product kan in de tabel producten staan. Get ID van het product in een koppeltabel gezamenlijk met een id van een categorie.

Als je dan het product verwijderd moet je uiteraard ook het id van dit product uit de koppeltabel halen en die rij daar dus ook verwijderen.

Dat heeft niet met een verrot database model te maken, maar met een verrot script voor de website, die moet er dan voor zorgen dat alles verwijderd owrdt. Maar zoals ik al zei, je moet proberen zoveel mogelijk te voorkomen dat er dingen verwijderd hoeven te worden.
 
Dat lijkt me niet. Een product kan in de tabel producten staan. Get ID van het product in een koppeltabel gezamenlijk met een id van een categorie.

Als je dan het product verwijderd moet je uiteraard ook het id van dit product uit de koppeltabel halen en die rij daar dus ook verwijderen.

Dat heeft niet met een verrot database model te maken, maar met een verrot script voor de website, die moet er dan voor zorgen dat alles verwijderd owrdt. Maar zoals ik al zei, je moet proberen zoveel mogelijk te voorkomen dat er dingen verwijderd hoeven te worden.

Nee, daar ga je de mist in, dan heb je dus een verrot databasemodel.

Als je 'product' verwijdert zijn er 2 opties:

- De database verwijdert ook de rij in de koppeltabel (CASCADE)
- De database verbiedt je de rij te verwijderen omdat er nog eenk oppeling is (RESTRICT)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan