..
In dit korte artikel zullen we zien hoe het mogelijk is om queries te maken die u wilt verwijderen (DELETE) benutting van het potentieel van de naden, dat wil zeggen, het creëren van relaties tussen tabellen in MySQL.
In feite hebben we al gezien hoe de JOIN te gebruiken bij de selectie van de gegevens (SELECT) en ge-update (UPDATE), hier zullen we alleen maar uitbreiden wat er al is geleerd.
Om beter te leren de mogelijkheden van deze techniek zou moeten overwegen, zoals onze gewoonte om een concreet geval gebruik te nemen.
Laten we zeggen dat we moeten werken aan een database van een hypothetische magazijn bestaat uit de volgende tabellen (waarvan we beschrijven hun structuren):
1) Stel je wilt een product waarvan je weet dat de ID te verwijderen. In dit geval kunt u alleen nog maar een triviale query:
DELETE * FROM producten WHERE id = 1;2) Dezelfde vraag zal worden gebruikt als u alle producten verpakt in een bepaalde plank verwijderen:
DELETE * FROM producten WHERE ripiano_id = 1;3) Maar als je wilt alle producten te verwijderen binnen een bepaalde plank?
In werkelijkheid is het probleem is niet onoverkomelijk! met een beetje 'handigheid in het omgaan met vragen, in feite, is het obstakel eenvoudig te omzeilen! Hoe? met een JOIN! Hier is een voorbeeld:
DELETE producten .* FROM producten INNER JOIN schappen ON = prodotti.ripiano_id ripiani.id WHERE ripiani.scaffale_id = 1;Daarbij hebben we een relatie tussen twee tabellen "producten" en "planken" (gebaseerd op het gebied van JOIN "ripiano_id" tabel dat de eerste identificatie van de tweede wedstrijden) om het veld "scaffale_id" van deze exploit ' laatste.
Op het eerste gezicht misschien lijkt misschien een beetje ingewikkeld ... is eigenlijk heel simpel. Het gaat over het creëren van een logische relatie tussen twee tabellen om informatie te gebruiken om de eerste van de tweede bedienen.
Waar, in aanvulling op de producten, wilden we allemaal de schappen plank die overeenkomt met de opgegeven pututo gebruiken we een iets andere vraag te verwijderen:
DELETE producten .*, planken .* FROM producten INNER JOIN schappen ON = prodotti.ripiano_id ripiani.id WHERE ripiani.scaffale_id = 1;In essentie is dit de query uitzicht net boven het enige verschil is dat de annulering zal niet alleen de velden van invloed zijn in de tabel "producten":
producten .*maar ook die van de tabel "shelf":
planken .*Voor vragen of verzoeken ik nodigen u uit om op onze forums .
| |
MS Access (Advanced)
Leer hoe het maken en beheren databases snel en gemakkelijk. Vanaf 29 €. |
| |
MySQL (Cursus)
Beheer van de open source database. Van 39 €. |
| |
SQL en Database (Cursus)
Maken en beheren van relationele databases. Van 39 €. |