Fő tartalom
Programozás
Tantárgy/kurzus: Programozás > 3. témakör
4. lecke: Adatbázisok módosítása SQL-ben- Adatbázis frissítése SQL-ben
- Sorok változtatása UPDATE és DELETE használatával
- Feladat: Dinamikus dokumentumok
- Táblák módosítása létrehozás után
- Feladat: Öltözet módosítása
- Tedd biztonságosabbá az SQL-edet
- Projekt: Megszemélyesítő alkalmazás
© 2023 Khan AcademyFelhasználási feltételekAdatkezelési tájékoztatóSüti figyelmeztetés
Adatbázis frissítése SQL-ben
A kurzus során említettük, hogy sokszor SQL-t vagy SQL-szerű lekérdező nyelvet használunk adatbázisokon. Gondolhatunk arra, hogy bizonyos esetekben „csak-olvasó műveleteket” használunk, máskor pedig „olvasó/író műveleteket”.
A „csak-olvasó művelet” lehet példa egy adatelemzés egy adatcsomagon, ami egy applikációból vagy egy tanulmányból származik. Például egy naplózó-alkalmazás adatalemzőjeként lehet, hogy lekérdezném, hogy a felhasználók hány százaléka eszik azokon a napokon fagylaltot, amikor fut, hogy megvizsgáljam azt, hogy edzés után az emberek vajon szeretik-e magukat megjutalmazni:
SELECT * FROM diary_logs WHERE
food LIKE "%ice cream%" AND activity LIKE "%running%";
Amikor ilyen adatelemzéseket végzünk, az egyszerűen csak egy
SELECT
– ami csak olvasás. Nem készítünk új adatot, csak lekérdezzük a meglévőt. Nagyon jónak kell lennünk a SELECT
lekérdezésekben, de nem szükséges tudnunk, hogyan kell táblákat létrehozni, sorokat frissíteni, és minden ehhez hasonló.Az „olvasó/író műveletekre” lehet példa az, amikor egy szoftverfejlesztő backend-et készít egy webes applikációhoz. Például ha szoftverfejlesztőként az egészséges életmódot vizsgálnám, akkor írnék egy olyan kódot, ami képes beszúrni egy-egy új naplóbejegyzést az adatbázisba minden alkalommal, amikor a felhasználó kitölt egy űrlapot:
INSERT INTO diary_logs (id, food, activity)
VALUES (123, "ice cream", "running");
Ezt az SQL parancsot valószínűleg egy szerver-oldali nyelven belül hívnám meg, például egy függvénykönyvtárat használva, ami egyszerűbbé teszi a parancsok készítését. Egy beillesztés így nézne ki, ha például Pythont használnék az SQLAlchemy függvénykönyvtárral:
diary_logs.insert().values(id=123, food="ice cream", activity='running')
SQL-t kellene írnom akkor is, ha szeretném az adatbázist módosítani, ha a felhasználó szerkeszti vagy törli a naplóját, vagy akár ha kitörli a fiókját. Ha a csapat úgy dönt, még több funkcionalitást szeretne adni a felhasználó naplójához, például egy új oszlopot az érzelmeknek, hogy megfigyelhessék, hogy örül-e, amikor épp fagylaltot eszik vagy fut (szerintem nagyon örül), SQL kódra lenne szükség, hogy magát a tábla sémát módosítsuk.
Ezek mind „író műveletek” és szükségesek ahhoz, hogy az adatbázist adatok tárolására és frissítésére használjuk egy alkalmazásban. Az
INSERT
viszonylagosan biztonságos, mert csak annyit csinál, hogy adatokat ad hozzá, de az olyan műveletek, mint az UPDATE
, DELETE
, DROP
, és ALTER
veszélyesek lehetnek, mert a meglévő adatainkat módosítják! Ezért nagyon fontos, hogy jól megértsük őket és óvatosan használjuk. Folytasd a tanulást, hogy megismerd használatukat!Szeretnél részt venni a beszélgetésben?
Még nincs hozzászólás.