DDL commands

DDL: Data Description Language (or Statements) is de groep SQL statements waarmee je tabellen kunt aanmaken en verwijderen (CREATE, ALTER, DROP)

Create

Hiermee maak je een tabel aan.

CREATE TABLE student ( 
	stud_id CHAR(9), 
	voornaam VARCHAR(25), 
	tussenv VARCHAR(10), 
	achternaam VARCHAR(25), 
	geb_datum DATE, 
	reistijd DECIMAL(7,2) 
);

Alter

Met alter kun je de structuur van een al aangemaakte tabel wijzigen.

Gebruik dit niet te vaak, soms is het beter om een nieuwe database te maken.

  • Dit is omdat het een dure database actie is, het kost dus een boel om te doen. 

Drop

Met drop kan je een tabel verwijderen.

Dit is niet meer ongedaan te maken.

Null

Null staat voor niks/leeg.

Null is niet van toepassing of onbekend.

Null is niet 0 of een spatie.

Datatypes

TypeBetekenis
varchar(x)Tekst van lengte x
char(x)Tekst van lengte x
intGeheel getal
decimal (x,y)Getal met x posities, met een decimal separator op positie y
dateDatum
CLOBCharacter Large Object: grote teksten gigabytes
BLOBBinary Large Object: grote binaire bestanden van gigabytes

Constraints

Constraints zijn beperkingen/aanwijzingen die gelden voor een kolom of groep van kolommen .

Er zijn 5 constraints voor tabellen.

NaamAfkortingBetekenis
1Primary KeyPKIdentificeert een rij
2Foreign KeyFKVerwijst naar een andere rij
3UniqueUKUniek in die kolom
4Not NullNNMag niet leeg zijn
5CheckCControle op inhoud

Constraint 1: Primary Key

  • De primary key is de identificerende sleutel
  • Is nooit leeg (nooit null)
  • Bevat een unieke waarde
  • Maximaal een PK per tabel

Constraint 2: Foreign Key

  • Is de refererende sleutel
  • Verwijst naar een andere kolom
  • Kan leeg (null) zijn
  • Is niet uniek
  • Een foreign key kan specificeren wat er moet gebeuren met het child record bij een delete/update van het parent record.

Constraint 3: Unique constraint (key)

  • Unique constraint dwingt uniciteit af.
  • Kan meerdere keren in een tabel voorkomen
  • Iedere waarde in een kolom is uniek
  • Niet altijd ingevuld

Constraint 4: Not Null

  • Dwingt af dat iets ingevuld moet zijn
  • Zoals bijvoorbeeld een voornaam

Constraint 5: Check

  • Dwingt af dat er een bepaalde waarde is opgenomen.

Dit kan bijvoorbeeld gebruikt worden om de invoer van niet integere gegevens te voorkomen.

DML

DML: Data Manipulation Language

Insert

insert into student values 
(534845,‘Gonny',null,‘Henkes’);

Of

insert into student 
(student_nr, voornaam, achternaam)
 values (534845,‘Gonny',‘Henkes');

Dus:

INSERT INTO tbl_name (column1, column2,…) 
VALUES(value1, value2,…); 

Delete

delete from student;

Maar dit zal alles verwijderen, beter is dus:

delete from student 
where student_nr = 527727;

Dus:

DELETE FROM table_name 
[WHERE condition];

Update

update student 
set email = ‘Thijn.vanKempen@han.nl’ 
where student_nr = 514697

Dus:

UPDATE table 
SET column = expression 
	[,column = expression 
	,...] 
[WHERE condition]; 

DRL

DRL: Data Retrieval Language is het statement dat we het meest zullen gebruiken

Het is ook het meest complexe statement

Het begint altijd met het select statement

Select

select kolommen 
from tabel 

Distinct

Distinct zorgt voor alleen maar unieke waardes in de resultaat set.

select distinct klas_id 
from student 

Where

De where clausule legt een filter op de rijen voor specifieke selectie.

select * 
from student 
where voornaam = ‘Freek’ 

Operatoren

OperatorBetekenis
=Gelijk aan
>Groter dan
>Kleiner dan
>=Groter of gelijk aan
Kleiner of gelijk aan
!= en <>Niet gelijk aan

Order by

De order by legt een sortering aan op de resultaat set.

select * 
from student 
order by achternaam 

De volgorde is standaard ASC (default)

  • ASC - Ascending, laag naar hoog
  • DESC - Descending, hoog naar laag