1.3 TIETOJEN LISÄÄMINEN (INSERT)

Uusien tietueiden lisääminen tehdään INSERT-komennolla. INSERT INTO -komennon jälkeen kerrotaan taulun nimi, johon halutaan tietoja lisätä ja VALUES-määreen jälkeen luetellaan sulkujen sisällä jokaiseen kenttään tulevat arvot.

/* Lisätään tentit-tauluun uusi tenttisuoritus oppilaalle 121273-000X, kurssille TIE160, päivälle 15.3.1999 ja arvosanalla 2.5. */

INSERT INTO Tentit

VALUES ('121273-000X, 'TIE160', '15.3.1999', 2.5)

Kaikkien kenttien tietoja ei ole aina pakko antaa, jos taulun kentät hyväksyvät myös NULL-arvoja tai niille on määritelty oletusarvot. Tällöin on kuitenkin lueteltava niiden sarakkeiden nimet, joihin tietoja syötetään. Samoin on sarakkeiden nimet lueteltava, jos niihin halutaan syöttää eri järjestyksessä kuin ne on tauluun määritelty. Hyvä tapa on aina luetella sarakkeiden nimet vaikka lisäys tehtäisiinkin aina kaikkiin ja samassa järjestyksessä, koska tällöin INSERT-lause toimii vaikka joku sattuisi muuttamaan sarakkeiden järjestystä.

/* Sama kuin edellä. */

INSERT INTO Tentit (sotu, kurssitunnus, arvosana, pvm)

VALUES ('121273-000X, 'TIE160', 2.5, '15.3.1999')

Rivejä voidaan lisätä myös useampia kerrallaan, jos haetaan lisättävät rivit alikyselyllä. Voisimme tehdä uuden Tietokannat-nimisen taulun, joka olisi rakenteeltaan identtinen vanhan Tentit-taulumme kanssa. Tällöin voisimme helposti kopioida Tentit-taulusta kaikki Tietokannat-kurssin suoritukset Tietokannat-tauluun. INSERT-operaatio ei luo tauluja vaan taulun, johon tietoja lisätään täytyy olla olemassa.

/* Lisätään kaikki tentit-taulusta löytyvät TIE160-kurssin suoritukset Tietokannat-tauluun. */

INSERT INTO Tietokannat

SELECT *

FROM Tentit

WHERE kurssitunnus = 'TIE160'