SQL Beginnershandleiding

  1. Inleiding
  2. De eerste tabel
  3. De database benaderen vanuit PHP
  4. PDO: De database benaderen vanuit PHP
  5. Invoegen van records
  6. PDO: Invoegen van records
  7. Selecteren van records
  8. PDO: Selecteren van records
  9. Wijzigen van records
  10. PDO: Wijzigen van records
  11. Verwijderen van records
  12. PDO: Verwijderen van records
  13. Sleutels en constraints
  14. Selecteren uit meerdere tabellen: JOINS
  15. Werken met data en tijden
  16. Aggregate functies en GROUP BY
  17. Debuggen: het oplossen van SQL fouten
  18. Slotwoord en referenties
  19. Reacties op deze tutorial

Verwijderen van records

De laatste belangrijke bewerking die we op data in de database uit kunnen voeren, is het verwijderen van records uit de database. De query die we hiervoor gebruiken is een DELETE query.

Syntax
De syntax van de DELETE query ziet er als volgt uit:
Code
1
2
3
4
DELETE FROM
    tabelnaam
WHERE
    kolomnaam = 'waarde'

In deze query worden er geen kolomnamen opgegeven tussen DELETE en FROM. Dit is niet nodig aangezien toch het hele record uit de tabel verwijderd wordt. Deze query zal alle records verwijderen die voldoen aan de voorwaarde(n) uit de WHERE clausule.

Een record verwijderen (SQL)
Stel dat we alle werknemers willen verwijderen die in salaris schaal 10 zitten. We zouden de volgende query kunnen uitvoeren:
Code: query
1
2
3
4
DELETE FROM
    werknemers
WHERE
    salaris_schaal = 10
Code: output
1
Query OK, 1 row affected (0.06 sec)

Net als bij een UPDATE query zal ook de DELETE query natuurlijk geen records teruggeven. De enige informatie die we terugkrijgen is het aantal rijen dat aangepast is.

Een record verwijderen (PHP)
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
require_once 'db_config.php';

$sql "
    DELETE FROM
        werknemers
    WHERE
        salaris_schaal = 10
"
;

if(!
$res mysql_query($sql))
{
    
trigger_error(mysql_error().'<br />In query: '.$sql);
}
elseif(
mysql_affected_rows() == 0)
{
    echo 
'Geen records verwijderd. <br />Query: '.$sql;
}
else
{
    echo 
'Er zijn '.mysql_affected_rows().' records verwijderd uit de database.';
}
?>

Ook de PHP code die we in het geval van een DELETE query gebruiken lijkt heel veel op die van een UPDATE query. Wederom moeten we ook nu controleren of er wel degelijk rijen verwijderd zijn uit de database. Dit doen we net als bij de UPDATE query met mysql_affected_rows().

Vorige Volgende