Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele ALTER- ja INSERT-operaatiot | DDL ja DML SQL:ssä
Keskitaso SQL

bookALTER- ja INSERT-operaatiot

Kuvitellaan tilanne, jossa täytyy lisätä sarake olemassa olevaan tauluun. Taulun poistaminen (varsinkin jos siinä on jo tietoja) ja uuden taulun luominen sekä tietojen uudelleentäyttäminen ei olisi oikea ratkaisu.

Tässä luvussa tarkastellaan siis ALTER-operaatiota.

Note
Määritelmä

ALTER: Käytetään olemassa olevien tietokantaobjektien rakenteen muuttamiseen, kuten sarakkeiden lisäämiseen tai poistamiseen taulusta.

Katsotaan, miten tätä operaatiota käytetään:

CREATE TABLE library (
  id INT PRIMARY KEY,
  title VARCHAR(50) NOT NULL,
  author VARCHAR(50),
  pages INT
);

ALTER TABLE library ADD price DECIMAL DEFAULT 300;

ALTER TABLE library DROP COLUMN price;

Kuten huomaat, tämä on taulun luomiseen käytetty skripti edellisestä luvusta.

Seuraavaksi on kaksi ALTER-operaatiota. Ensimmäinen operaatio lisää price-sarakkeen tauluun ja asettaa tämän sarakkeen oletusarvoksi 300. Toinen operaatio poistaa tämän sarakkeen:

ALTER TABLE table_name ADD/DROP column_name DATA_TYPE;
Note
Huomio

ALTER-lauseella voidaan suorittaa erilaisia skeematasoisia operaatioita taululle, kuten rajoitteiden lisääminen tai poistaminen, uudelleennimeäminen, tietotyyppien muuttaminen sekä indeksien lisääminen tai poistaminen.

Seuraavaksi siirrytään toiseen operaatioon, eli lisäysoperaatioon.

Note
Määritelmä

INSERT: Käytetään uusien rivien lisäämiseen tauluun.

Käytettäessä INSERT-lausetta on määriteltävä, mihin sarakkeisiin arvot lisätään.

Tämän lauseen syntaksi näyttää seuraavalta:

INSERT INTO library (id, title, author, pages) VALUES 
  (1, 'CAMINO GHOSTS', 'John Grisham', '213'),
  (2, 'FUNNY STORY', 'Emily Henry', '341');

Tämä koodiesimerkki on edellisestä luvusta ja näyttää, miten tietoja lisätään library-tauluun.

Eritteleminen:

  1. Aloita INSERT INTO -lauseella ja taulun nimellä;
  2. Määrittele sarakkeiden nimet sulkeissa;
  3. Käytä VALUES-osaa tietojen listaamiseen samassa järjestyksessä kuin sarakkeet;
  4. Varmista, että tietotyypit vastaavat sarakkeita;
  5. Sulje sulkeet ja erottele rivit pilkuilla.

Yleinen syntaksi on:

INSERT INTO table_name (column1_name, column2_name) VALUES
  (column1_value, column2_value),
  (column1_value, column2_value),
  ...;

Muista puolipiste rivin lopussa!

Tehtävä

Swipe to start coding

Tyhjä taulu nimeltä employees, jossa on seuraavat sarakkeet:

employee_id INT PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
department VARCHAR(50),
salary DECIMAL(10, 2)

Kyseessä on sama taulu kuin aiemmissa osioissa, mutta nyt taulussa ei ole lainkaan tietoja (rivejä).

Tehtävänäsi on:

  1. Lisätä sarake country tähän tauluun, johon tallennetaan tieto työntekijän asuinmaasta.
  2. Lisätä tauluun 2 riviä tietoa, jotka näyttävät tältä:
    • id=1, first_name=Emily, last_name=Torres, department=Operations, salary=80000, country=United Kingdom.
    • id=2, first_name=David, last_name=Bobr, department=Engineering, salary=95000, country=Poland.

Tämän tehtävän suorittamiseksi käytä ensimmäisessä kohdassa ALTER TABLE -lausetta ja toisessa kohdassa INSERT-lausetta.

Koodieditorin oikealla puolella on valmiiksi kirjoitettua koodia. Älä poista tai muokkaa tätä koodia, sillä sitä tarvitaan ratkaisusi oikeellisuuden tarkistamiseen.

Lyhyet ohjeet

  • Käytä ALTER TABLE -lausetta lisätäksesi country-sarakkeen tyyppiä VARCHAR(50) tauluun employees.
  • Käytä INSERT INTO -lausetta lisätäksesi kaksi työntekijää tauluun employees.
  • Sulkuihin merkitse sarakkeet oikeassa järjestyksessä, joihin tiedot lisätään.
  • Lisää kaksi työntekijää annetuilla tiedoilla vaatimusten mukaisesti.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 2
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Suggested prompts:

Can you explain more about the ALTER TABLE operation?

What other types of changes can I make to a table using ALTER?

Can you show more examples of using INSERT with different data?

close

bookALTER- ja INSERT-operaatiot

Pyyhkäise näyttääksesi valikon

Kuvitellaan tilanne, jossa täytyy lisätä sarake olemassa olevaan tauluun. Taulun poistaminen (varsinkin jos siinä on jo tietoja) ja uuden taulun luominen sekä tietojen uudelleentäyttäminen ei olisi oikea ratkaisu.

Tässä luvussa tarkastellaan siis ALTER-operaatiota.

Note
Määritelmä

ALTER: Käytetään olemassa olevien tietokantaobjektien rakenteen muuttamiseen, kuten sarakkeiden lisäämiseen tai poistamiseen taulusta.

Katsotaan, miten tätä operaatiota käytetään:

CREATE TABLE library (
  id INT PRIMARY KEY,
  title VARCHAR(50) NOT NULL,
  author VARCHAR(50),
  pages INT
);

ALTER TABLE library ADD price DECIMAL DEFAULT 300;

ALTER TABLE library DROP COLUMN price;

Kuten huomaat, tämä on taulun luomiseen käytetty skripti edellisestä luvusta.

Seuraavaksi on kaksi ALTER-operaatiota. Ensimmäinen operaatio lisää price-sarakkeen tauluun ja asettaa tämän sarakkeen oletusarvoksi 300. Toinen operaatio poistaa tämän sarakkeen:

ALTER TABLE table_name ADD/DROP column_name DATA_TYPE;
Note
Huomio

ALTER-lauseella voidaan suorittaa erilaisia skeematasoisia operaatioita taululle, kuten rajoitteiden lisääminen tai poistaminen, uudelleennimeäminen, tietotyyppien muuttaminen sekä indeksien lisääminen tai poistaminen.

Seuraavaksi siirrytään toiseen operaatioon, eli lisäysoperaatioon.

Note
Määritelmä

INSERT: Käytetään uusien rivien lisäämiseen tauluun.

Käytettäessä INSERT-lausetta on määriteltävä, mihin sarakkeisiin arvot lisätään.

Tämän lauseen syntaksi näyttää seuraavalta:

INSERT INTO library (id, title, author, pages) VALUES 
  (1, 'CAMINO GHOSTS', 'John Grisham', '213'),
  (2, 'FUNNY STORY', 'Emily Henry', '341');

Tämä koodiesimerkki on edellisestä luvusta ja näyttää, miten tietoja lisätään library-tauluun.

Eritteleminen:

  1. Aloita INSERT INTO -lauseella ja taulun nimellä;
  2. Määrittele sarakkeiden nimet sulkeissa;
  3. Käytä VALUES-osaa tietojen listaamiseen samassa järjestyksessä kuin sarakkeet;
  4. Varmista, että tietotyypit vastaavat sarakkeita;
  5. Sulje sulkeet ja erottele rivit pilkuilla.

Yleinen syntaksi on:

INSERT INTO table_name (column1_name, column2_name) VALUES
  (column1_value, column2_value),
  (column1_value, column2_value),
  ...;

Muista puolipiste rivin lopussa!

Tehtävä

Swipe to start coding

Tyhjä taulu nimeltä employees, jossa on seuraavat sarakkeet:

employee_id INT PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
department VARCHAR(50),
salary DECIMAL(10, 2)

Kyseessä on sama taulu kuin aiemmissa osioissa, mutta nyt taulussa ei ole lainkaan tietoja (rivejä).

Tehtävänäsi on:

  1. Lisätä sarake country tähän tauluun, johon tallennetaan tieto työntekijän asuinmaasta.
  2. Lisätä tauluun 2 riviä tietoa, jotka näyttävät tältä:
    • id=1, first_name=Emily, last_name=Torres, department=Operations, salary=80000, country=United Kingdom.
    • id=2, first_name=David, last_name=Bobr, department=Engineering, salary=95000, country=Poland.

Tämän tehtävän suorittamiseksi käytä ensimmäisessä kohdassa ALTER TABLE -lausetta ja toisessa kohdassa INSERT-lausetta.

Koodieditorin oikealla puolella on valmiiksi kirjoitettua koodia. Älä poista tai muokkaa tätä koodia, sillä sitä tarvitaan ratkaisusi oikeellisuuden tarkistamiseen.

Lyhyet ohjeet

  • Käytä ALTER TABLE -lausetta lisätäksesi country-sarakkeen tyyppiä VARCHAR(50) tauluun employees.
  • Käytä INSERT INTO -lausetta lisätäksesi kaksi työntekijää tauluun employees.
  • Sulkuihin merkitse sarakkeet oikeassa järjestyksessä, joihin tiedot lisätään.
  • Lisää kaksi työntekijää annetuilla tiedoilla vaatimusten mukaisesti.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 2
single

single

some-alt