Ga naar inhoud

Header

Data toevoegen en aanpassen

Introductie

Inmiddels hebben we het volgende gezien:

  • CREATE TABLE: tabel aanmaken.
  • DROP TABLE: tabel verwijderen.

De tabel die we tot nu toe zelf hebben gemaakt bevatte nog geen data.

We gaan nu bekijken hoe we data in een tabel kunnen: * Toevoegen. * Aanpassen. * Verwijderen.

Hiervoor maken we allereerst weer de tabel trainees aan:

CREATE TABLE trainees (
  first_name VARCHAR (50) NOT NULL,
  last_name VARCHAR (50) NOT NULL,
  email_address VARCHAR (255) UNIQUE NOT NULL
);
* Deze tabel bevat nu nog geen rijen:

SELECT
  *
FROM
  trainees;
first_name last_name email_address
Columns: 3
Rows: 0




1. Een rij toevoegen

Met INSERT INTO en VALUES voeg je een rij toe aan een tabel.

Daarbij doe je het volgende:

  • INSERT INTO
    • Tabelnaam.
      • Tussen ronde haken de kolomnamen.
  • VALUES
    • Tussen ronde haken de waarden.

In onderstaand voorbeeld voegen we een rij aan tabel trainees toe:

INSERT INTO
  trainees (
    first_name,
    last_name,
    email_address
  )
VALUES
  (
    'Adriana',
    'Goswin',
    'a.goswin@mail.com'
  );
Output:
1 rows affected
  • We bekijken het resultaat:
SELECT
  *
FROM
  trainees;
first_name last_name email_address
Adriana Goswin a.goswin@mail.com
Columns: 3
Rows: 1
  • Als je dezelfde rij nogmaals probeert toe te voegen krijg je een error:
Output:
duplicate key value violates unique constraint "trainees_email_address_key"
  • Dit komt doordat kolom email_address de beperking (constraint) UNIQUE heeft.




2. Meerdere rijen toevoegen

We hebben nu 1 rij toegevoegd.

Met INSERT INTO en VALUES kunnen we ook meerdere rijen toevoegen.

In onderstaand voorbeeld voegen we meerdere rijen aan tabel trainees toe:

INSERT INTO
  trainees (
    first_name,
    last_name,
    email_address
  )
VALUES
  (
    'Mirthe',
    'Duuk',
    'm.duuk@mail.com'
  ),
  (
    'Thijmen',
    'Jansen',
    't.jansen@mail.com'
  ),
  (
    'Paulien',
    'Spronk',
    'p.spronk@mail.com'
  );
Output:
3 rows affected
  • We bekijken het resultaat:
SELECT
  *
FROM
  trainees;
first_name last_name email_address
Adriana Goswin a.goswin@mail.com
Mirthe Duuk m.duuk@mail.com
Thijmen Jansen t.jansen@mail.com
Paulien Spronk p.spronk@mail.com
Columns: 3
Rows: 4




3. Rijen verwijderen

We hebben nu een tabel met 3 kolommen en 4 rijen.

Het kan zijn dat een deelnemer zich heeft uitgeschreven, en verwijderd moet worden.

Met DELETE FROM en WHERE kunnen we rijen verwijderen.

  • DELETE FROM laat je een selectie verwijderen doen.
  • Met WHERE filter je een selectie die moet worden verwijderd.

In onderstaand voorbeeld verwijderen we een selectie uit tabel trainees toe:

DELETE FROM
  trainees
WHERE
  email_address = 'p.spronk@mail.com';
Output:
1 rows affected
  • Alle rijen die gefilterd worden met het WHERE statement worden verwijderd.
  • 1 rij is aangepast.
  • We bekijken het resultaat:
SELECT
  *
FROM
  trainees;
first_name last_name email_address
Adriana Goswin a.goswin@mail.com
Mirthe Duuk m.duuk@mail.com
Thijmen Jansen t.jansen@mail.com
Columns: 3
Rows: 3
  • Als je alle rijen uit een tabel wilt verwijderen gebruik je TRUNCATE TABLE <table_name>;
    • Denk altijd wel goed na voordat je dit doet.




4. Waarden aanpassen

We hebben nu een tabel met 3 kolommen en 3 rijen.

Het zou kunnen dat bijvoorbeeld een e-mailadres verkeerd is ingevoerd.

In dat geval moeten we het aanpassen.

Met UPDATE, SET en WHERE kunnen we aanpassingen doen.

  • UPDATE laat je een aanpassing doen.
  • Vanuit SET benoem je de beoogde aanpassing.
  • Met WHERE filter je een selectie die moet worden aangepast.




In onderstaand voorbeeld passen we een e-mailadres aan:

  • 't.jansen@mail.com' -> 't.jansen@mail.nl'.
UPDATE
  trainees
SET
  email_address = 't.jansen@mail.nl'
WHERE
  email_address = 't.jansen@mail.com';
Output:
1 rows affected
  • Alle rijen die gefilterd worden met het WHERE statement worden aangepast.
  • 1 rij is aangepast.
  • We bekijken het resultaat:
SELECT
  *
FROM
  trainees;
first_name last_name email_address
Adriana Goswin a.goswin@mail.com
Mirthe Duuk m.duuk@mail.com
Thijmen Jansen t.jansen@mail.nl
Columns: 3
Rows: 3
  • Hierbij kun je met behulp van comparisson- (=, >, etc.) en logical operators (AND, OR, etc.) specificeren wat je aan wilt passen.




5. Kolom toevoegen

We hebben nu een tabel met 3 kolommen en 3 rijen.

Het zou kunnen dat er extra details toegevoegd moeten kunnen worden.

In dat geval moeten we een kolom toevoegen.

Met ALTER TABLE en ADD kunnen we kolommen toevoegen.

  • ALTER TABLE laat je een aanpassing aan de tabelstructuur doen.
  • Vanuit ADD benoem je de nieuwe kolom(men).




In onderstaand voorbeeld voegen we een nieuwe kolom toe:

  • Met de naam date_of_birth.
  • Met datatype DATE.
ALTER TABLE
  trainees
ADD
  date_of_birth DATE;
Output:
Query execution started
Query execution finished
  • We bekijken het resultaat:
SELECT
  *
FROM
  trainees;
first_name last_name email_address date_of_birth
Adriana Goswin a.goswin@mail.com (NULL)
Mirthe Duuk m.duuk@mail.com (NULL)
Thijmen Jansen t.jansen@mail.nl (NULL)
Columns: 4
Rows: 3
  • De nieuwe kolom bevat nu nog geen waarden.
  • Deze kun je met UPDATE, SET en WHERE toevoegen.




6. Kolom verwijderen

We hebben nu een tabel met 4 kolommen en 3 rijen.

Het zou kunnen dat we een fout hebben gemaakt, en dat de nieuwe kolom date_of_birth weer verwijderd moet worden.

Met ALTER TABLE en DROP COLUMN kunnen we kolommen verwijderen.

  • ALTER TABLE laat je een aanpassing aan de tabelstructuur doen.
  • Vanuit DROP COLUMN benoem je de te verwijderen kolom.




In onderstaand voorbeeld verwijderen we een kolom:

  • De kolom met naam date_of_birth.
ALTER TABLE
  trainees DROP COLUMN date_of_birth;
Output:
Query execution started
Query execution finished
  • We bekijken het resultaat:
SELECT
  *
FROM
  trainees;
first_name last_name email_address
Adriana Goswin a.goswin@mail.com
Mirthe Duuk m.duuk@mail.com
Thijmen Jansen t.jansen@mail.nl
Columns: 3
Rows: 3
  • De kolom is verwijderd.




Samenvatting

  • Rijen toevoegen:
    • Met INSERT INTO en VALUES voeg je rijen toe aan een tabel.
  • Rijen verwijderen:
    • Met DELETE FROM en WHERE verwijderen je een gefilterde selectie rijen.
    • Met TRUNCATE TABLE verwijder je alle rijen.
  • Waarden aanpassen:
    • Met UPDATE, SET en WHERE doe je aanpassingen op een gefilterde selectie rijen.
  • Kolom toevoegen:
    • Met ALTER TABLE en ADD voeg je een kolom toe.
  • Kolom verwijderen:
    • Met ALTER TABLE en DROP COLUMN verwijder je een kolom.