2.6.1 SQL andmete manipuleerimiskeele (DML)

Liikudes andmete manipuleerimiskeele (DML) juurde, võib märkida, et on võimalik andmeid tabelisse lisada järgmise korraldusega:
insert into tname [(colname, ...)] values (colval, ...);
kus on kasutatud tähiseid:
tname - tabelinimi, millisesse andmeid lisatakse;
colname - veerunimi, kuhu lisatakse;
colval - konkreetsed andmed, mida lisatakse.
Andmete lisamise operatsioon võib nurjuda mitmel põhjusel: lisatavad andmed dubleerivad unikaalse indeksi väärtusi või sisestatavad andmed ei vasta veeru määratud andmetüübile.
Näited: |
Insert into tudengid (tkood, eesnimi, perenimi) values (12, "Juhan", "Juurikas"); |
Ridade kustutusoperatsioon võimaldab lisada ka kustutamise tingimusi, tutvustades uut süntaksielementi klausel where.
delete from tname [where colname condition {colval|colname} [oprel ...]];
kus on kasutatud tähiseid
Tname - tabelinimi, millisest andmeid kustutatakse;
colname - veerunimi;
condition - tingimusoperaator;
colval - väärtus, mida võrreldakse colname veeru sisuga;
oprel - suhteoperaator (relatsiooniline operaator).
Siin käsitletud tingimused on küllaltki lihtsad. Kõikvõimalikud where klausli tingimused on palju laiemad ja jäävad käesolevast käsitlusest välja.
Tingimus |
Tähendus |
= |
Tingimus on tõene, kui operaatori mõlemad pooled on võrdsed. |
!= |
Tingimus on tõene, kui operaatori mõlemad pooled on erinevad. |
> >= <= < |
Tingimus on tõene, kui operaatori mõlemad pooled vastavad näidatud võrratuse tingimusele. |
like |
Tingimus on tõene, kui termini "like" vasak pool sisaldab parempoolseid tingimusi (sümboleid). Võib kasutada metamärke nagu "%" sümbol. Sümbolit % käsitletakse, kui sümbolite mistahes järjestust. |
matches |
Tingimus on tõene, kui vasak pool vastab parempoolsetele tingimustele (sümbolitele). Võib kasutada metamärke. |
Suhteoperaator |
Tähendus |
and |
Avaldis on tõene, kui operaatorile eelnevad ja järgnevad tingimused on mõlemad tõesed. |
or |
Avaldis on tõene, kui vähemalt üks kahest tingimusest on tõene. |
not |
Eitab operaatorile järgnevat tingimust (vastab vastandväärtusele). |
Järgnev näide demonstreerib, kuidas tühistatakse kõik õpilane kirjed Juurikas perekonnanimega, kes on sündinud enne 1. jaanuari 1983. Rea tühistamiseks (kustutamiseks) peab see rahuldama mõlemaid tingimusi ja seepärast kasutatakse and operaatorit.
Näited: |
delete from tudengid where synnipaev <"01.01.1983" and perenimi="Juurikas"; |
Tabeli väärtuste muudatusi võib teha järgmise korraldusega:
update tname set colname=valcol, ... [where colname condition {colval|colname} [oprel ...]];
kus on kasutatud tähiseid
tname - tabelinimi, millisest andmeid kustutatakse;
colname - veerunimi;
valcol - veerule omistatud väärtus;
condition - tingimusoperaator;
colval - väärtus, mida võrreldakse colname veeru sisuga;
oprel - suhteoperaator (relatsiooniline operaator).