If you're seeing this message, it means we're having trouble loading external resources on our website.

Om du är bakom en brandvägg eller liknande filter, vänligen se till att domänerna *. kastatic.org och *. kasandbox.org inte är blockerade.

Huvudinnehåll

Använda SQL för att uppdatera en databas

Som vi har nämnt under hela kursen finns det många gånger vi kan använda oss av SQL eller ett SQL-liknande frågespråk i en databas. Vi kan tänka på vissa användningsområden som "bara läsa operationer" och andra användningsområden som "läs / skriv operationer".
Ett exempel på en "bara läs-operation" är en dataanalys på en datadump från en app- eller forskningsstudie. Om jag t.ex. var datavetare som arbetar med en daglig dagbok, kan jag fråga vilken procentandel användare som äter glass samma dag som de springer, för att förstå om träning gör att människor vill belöna sig själva:
SELECT * FROM diary_logs WHERE
       food LIKE "%ice cream%" AND activity LIKE "%running%";
Om jag gör en dataanalys så är i stort sett allt jag gör varianter av SELECT - det är bara läsfrågor. Vi skapar inte några nya data, vi söker bara befintliga data. Vi behöver bli mycket bra på SELECT -frågor, men vi behöver inte veta hur man skapar tabeller, uppdaterar rader och allt sånt.
Ett exempel på "läs / skriv operationer" är en mjukvaruingenjör som skapar backend/server för en webapp. Till exempel, om jag var utvecklaren som arbetar med hälsotrackern, kanske jag skriver kod som vet hur man sätter in en ny daglig logg i databasen varje gång en användare skickar ett formulär:
INSERT INTO diary_logs (id, food, activity)
            VALUES (123, "ice cream", "running");
Jag skulle förmodligen skicka det SQL-kommandot från ett server-side språk, troligen med hjälp av ett bibliotek för att göra det lättare att konstruera kommandon. Så här skulle den skrivningen se ut om jag använde Python med SQLAlchemy-biblioteket:
diary_logs.insert().values(id=123, food="ice cream", activity='running')
Jag skulle också behöva skriva SQL för att ändra databasen om användaren redigerade sin dagliga logg, raderade den eller tog bort sitt konto. Om vårt team bestämde sig för att addera fler funktioner i användarens dagliga logg, som en Känslo(emotions)kolumn för att spåra hur lyckliga de är medan de äter glass och springer (min hypotes: mycket glad), skulle jag behöva skriva SQL för att ändra själva tabellschemat .
De är alla "skrivoperationer", och de är nödvändiga om vi ska använda en databas för att lagra och uppdatera data för en app. INSERT är relativt säker, eftersom den bara lägger till data, men operationer som UPDATE, DELETE, DROP eller ALTER kan vara mycket "farligare", eftersom de uppdaterar befintliga data. Därför är det viktigt att verkligen förstå dem bra och använda dem försiktigt. Fortsätt för att lära dig använda dem!

Vill du gå med i konversationen?

Inga inlägg än.
Förstår du engelska? Klicka här för att se fler diskussioner på Khan Academys engelska webbplats.