Tabellen maken

Info 
Door: Mirax Moeilijkheidsgraad: 2/3
Views:19.890Reacties: 2(Bekijken)
  Log in om zelf te reageren
 Waardering:4.5/10 (2 stemmen)

Basiscursus MySQL» Inleiding MySQL | Verbinding maken met de database | Tabellen maken | Gegevens aan een tabel toevoegen | Gegevens uit de database halen | Gegevens aanpassen en verwijderen




Vanaf nu gaan we er vanuit dat je een verbinding hebt gemaakt met de database. De code om de verbinding te maken moet dus tijdens het laden van de pagina een keer worden uitgevoerd. Het kan handig zijn om dit verbinden in een apart bestand te plaatsen, die je telkens 'include'.

Voordat je data in een tabel in je database kunt plaatsen, moet je die tabel eerst maken, daar gaat deze tutorial over.

Tabel maken
We zullen beginnen met de SQL code om een tabel aan te maken, daarna zie je hoe je deze kunt implementeren in je PHP-code. Deze SQL code kun je ook uitvoeren in phpMyAdmin (als je daarover beschikt).

#Code
1
2
3
4
5
6
7
8
9
CREATE TABLE `producten` (
`id`
    INT(8) NOT NULL AUTO_INCREMENT ,
`naam`
    VARCHAR(100) NOT NULL ,
`prijs`
    INT(6) DEFAULT 100 ,
PRIMARY KEY(`id`)
);


Deze query zal een tabel aanmaken met drie kolommen: een kolom met een uniek nummer voor elk product, een kolom met de naam van het product, en een kolom met de prijs. De query spreid ik uit over 9 regels, dit is niet noodzakelijk, het kan namelijk op een enkele regel ook, maar wel zo duidelijk voor jezelf, als je de query nog eens wilt aanpassen, of voor een ander, die hem voor het eerst ziet. De eerste regel zal duidelijk zijn. Er wordt een tabel aangemaakt met als naam producten. Let ook op de gebruikte quotes, de ` is om namen van tabellen of kolommen aan te geven, de ' wordt ook in SQL gebruikt om strings aan te geven. De ` mag je overigens ook weglaten.

Tussen de haakjes wordt de tabel verder gespecificeerd. Tussen twee `, staat telkens de naam van een kolom, daarachter geef je meer informatie mee over het type. Zo heb ik voor id gekozen voor een getal van maximaal 8 cijfers (tot 99.999.99 dus maximaal), voor de naam een string van 100 tekens, en voor de prijs maximaal 6 cijfers. Tevens mogen de waarden in de kolommen id en naam niet leeg (NOT NULL) zijn. De kolom prijs heeft een standaard waarde van 100 (euro bijvoorbeeld).

De kolom id heeft nog een extra eigenschap, AUTO_INCREMENT. Door deze instelling krijgt elke rij die nieuw wordt toegevoegd aan de tabel, een id hoger dan de laatste die tot dan werd toegevoegd. De eerste krijgt als waarde 1, de volgende dus 2, et cetera. Tenslotte wordt de kolom id ingesteld als PRIMARY KEY. Deze primaire sleutel moet voor elke rij een andere waarde hebben. Dit wordt al geforceerd door AUTO_INCREMENT. Dit is noodzakelijk om elke rij uniek te kunnen identificeren.

Tenslotte wordt de regel SQL afgesloten met een puntkomma, dit is noodzakelijk om verschillende regels SQL van elkaar te scheiden. (In dit geval is er maar een regel code, dus kan hij ook worden weggelaten).

Hierboven zijn twee verschillende datatypes voor een kolom gebruikt, maar er zijn er nog veel meer. Behalve INT zijn er nog meer manieren om getallen aan te duiden, bijvoorbeeld TINYINT, BIGINT, FLOAT, DECIMAL. Ook kun je op meerdere manieren tekst opslaan, behalve VARCHAR, van maximaal 255 tekens, kun je ook CHAR, TEXT en BLOB gebruiken. Behalve tekst en getallen kun je ook een datum opslaan, met behulp van bijvoorbeeld DATETIME of TIMESTAMP. ENUM kun je gebruiken als je als waarde een keuze wilt laten maken tussen twee of meerdere waarden. Er zijn nu een hoop datatypes genoemd, in de tutorial zal daar geen extra uitleg over komen, maar je kan er meer over lezen in MySQL Manual.

Implementeren in PHP
Deze SQL code kun je, als je eenmaal verbinding hebt, direct naar je database sturen, en wel als volgt:

#Code
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$qTabelmaken = 'CREATE TABLE `producten` (
`id`
    INT(8) NOT NULL AUTO_INCREMENT ,
`naam`
    VARCHAR(100) NOT NULL ,
`prijs`
    INT(6) DEFAULT 100 ,
PRIMARY KEY(`id`)
);'
;  // q van query
$rTabelmaken = mysql_query( $qTabelmaken );
?>


Dit is eigenlijk alles. Met de functie mysql_query() kun je direct een query uitvoeren in je database. Je kunt weer kijken of het maken van de tabel is gelukt. Dit werkt op dezelfde manier als in het vorige deel, hierbij kun je weer gebruik maken van mysql_error().

Nu je eenmaal een tabel hebt, wil je er ook dingen inzetten, dan doen we in het volgende deel uit deze reeks tutorials.

«Verbinding maken met de database Gegevens aan een tabel toevoegen »

2 reacties
Peck Geplaatst op 12-11-2007 om 16:49
 

Moderator
Dat wilt zeggen dat je een typfout hebt gemaakt. Post je code hier eens.
crocopep Geplaatst op 12-11-2007 om 16:08
 

Regular
Ik krijg deze error:
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/www/krasnet.awardspace.com/verwerk.php on line 7

Pagina 1 

Om te reageren moet je ingelogd zijn.
Nog niet geregistreerd? Doe dat dan nu!


Terug naar gewone pagina

Websitemaken wordt gehost door Nucleus.be, uw Hosting Solution Builder