Les 10 : Aanmaken van een database (deel2).
Wat is een database? Een centrale opslagruimte voor gegevens. Alle informatie wordt centraal opgeslagen en kan door iedereen geraadpleegd worden. Voordelen van een database zijn: 1. Centrale opslagruimte voor gegevens 2. Beveiliging van gegevens (user niveau) 3. Data kan geraadpleegd worden door iedereen (mits toestemming) 4. Meer efficiënt werken 5. Meer efficiënte communicatie 6. Bijhouden van data en mogelijkheid voor backup van data!
Waarvoor gaan we een database gebruiken? Heel wat punten zijn reeds aangehaald hierboven. Wij gaan voornamelijk een database gebruiken om gegevens centraal op te slagen. Alle informatie van een website of applicatie wordt immers in een database beheerd. Deze data kan te allen tijde geraadpleegd worden, aangepast worden of gearchiveerd worden . Informatie en data, van welke soort dan ook, bv bedrijfsinformatie, facturatie gegevens, communicatie tussen werknemers, werkgevers, noem maar op. Deze kan allemaal bijgehouden worden in een database en steeds te allen tijde geraadpleegd worden.
Andere mogelijkheden van data opslag. Data kan via verscheidene opslagmedia bijgehouden worden. Denk maar aan usb sticks, cd rom, dvd rom (blu ray), externe en interne harde schijven, en nog veel meer. Voor online gebruik daarentegen wordt er vaak gebruik gemaakt van databases, xml of eventueel Json. Andere formaten als RDF en RDFa zijn momenteel nog volop in ontwikkeling. RDF en RDFa zijn toepassingen voor het semantisch web, ook wel web3.0 (next generation) genaamd. In deze nieuwe technologie zal er meer en meer gebruik gemaakt worden van semantiek, semantische databases, dit om meer betekenis kunnen toe te voegen aan data zodat software systemen data beter en beter kunnen begrijpen.
Phpmyadim. Phpmyadmin is een grafische interface die wij kunnen gebruiken voor het aanmaken van databases. SQL geeft ons echter ook deze mogelijkheid, phpmyadmin zal voor ons het werk echter heel wat eenvoudiger maken. Hoe komen we echter in deze module terecht? We starten onze localhost op en gebruiken de volgende url: http://localhost/phpmyadmin/
Het aanmaken van een database. Eens aangelogd op de phpmyadmin interface krijgen we dadelijk de keuze voor het aanmaken voor een nieuwe database.
We kiezen een naam voor onze database. (Gedurende deze lessen gebruiken we de naam cursisten). De overige velden laten we gewoon staan op Collatie en utf8_unicode_ci.
Vervolgens klikken op “Aanmaken” en onze database wordt gecreëerd op ons systeem lokaal. In de volgende stap krijgen we de keuze om onze tabellen aan te maken. Gedurende onze oefening gebruiken we 2 tabellen. 1. Berichten 2. Gegevens. Beide tabellen bevatten volgende velden. 1) Berichten a) Bericht_id b) Bericht_intro c) Bericht d) Titel 2) Gegevens a) Gegevens_id b) Naam c) Voornaam d) Straat e) Nummer f) Gsm g) Postcode h) Gemeente i)
Email
j) foto Na het aanmaken van de database krijgen we dadelijk de optie om onze tabellen aan te maken. Als eerste maken we onze tabel “berichten” aan.
We vullen de naam in van onze tabel en vervolgens het aantal velden.
TIP : best kan je voordat je start, even pen en papier bij de hand nemen en de namen van je database, tabellen en velden even noteren. Dit maakt het makkelijker en deze nota’s kan je nadien gebruiken wanneer je aan het werken bent aan je php code en sql query’s. Na het invoeren van deze gegevens verkrijg je een overzicht waar we onze 4 velden vervolgens moeten gaan definiëren. We moeten hier de naam (veld of field), het type en de index invullen. De overige gegevens zijn niet zozeer belangrijk gedurende de lessen. Naam (veld of field)
type
index
Bericht_id
INT
PRIMARY
Bericht_intro
TINY TEXT
Bericht
TEXT
titel
TINY TEXT
De andere velden zijn minder belangrijk voor onze oefeningen. De meest belangrijke velden voor ons zijn “veld” , “type” en “index”. Betekenis van deze velden. Veld: hier vullen we de naam van het database veld in.
Type: We hebben verscheidene types van velden voor een database. Nummeringen stellen we in van het type INT, tekst stellen we in als TEXT of TINY TEXT. Het type TEXT laat meer karakters toe dan TINY TEXT. Index: elke tabel in een database heeft een “primary key” of unieke sleutel. Dit veld heeft als naam conventie steeds “naam‐van‐de‐tabel_id”. In ons geval dus “bericht_id”. Deze stellen we steeds in als Primary. Na het invoeren van deze typen krijgen klikken we op start en krijgen we het volgende scherm.
In de laatste stap gaan we ons primary veld “bericht_id” instellen met een auto nummering. Dit zorgt ervoor dat dit veld steeds een unieke nummer geeft aan de inhoud van de tabel. Eerst stellen we het veld in als “primary key”, je neemt de optie verkennen.
Dan komen we in het volgende scherm.
Daar nemen we de optie “primary key”, na het klikken op het icoontje krijg je de melding om deze instelling te bevestigen. Hier bevestig je.
Als laatste moeten we de auto nummering van dit veld gaan instellen. Dit mag je zeker niet vergeten. Wanneer we geen auto nummering instellen gaan we fouten krijgen bij het behandelen van de data in de database. Hiervoor gebruiken we de functie voor het bewerken of veranderen van de instellingen van dit veld.
Je klikt op het potlood icoontje en dan krijgen we het volgende scherm.
De instelling AUTO_INCREMENT gaan we hier aanvinken en de tabel is klaar. Deze handelingen moet je steeds uitvoeren bij het aanmaken van iedere tabel die je zal gebruiken in je database. Wat zijn de belangrijkste handelingen bij het aanmaken van tabellen en welke instellingen moet je altijd doen. 1. Alle gerelateerde data ga je plaatsen in een tabel 2. Schrijf de namen van je velden eerst even op, op papier, voordat je start met het aanmaken van tabellen. Deze zal je nadien nog handig kunnen gebruiken. 3. Geef de velden een logische naam 4. Maak altijd een veld, met als naam “naam‐van‐tabel_id”. 5. Maak van dit veld een numeriek veld, met als type INT 6. Stel de index in als “PRIMARY” 7. Stel dit veld in als “primary key” 8. Stel voor dit veld de auto nummering in.
Oefening. Maak een nieuwe tabel aan in de database cursisten. Gebruik de veldnamen zoals vermeld op pagina 3 (aanmaken van de database (naam, voornaam, emai, gsm, ……, etc), gebruik geen hoofdletters). Geeft de juiste instellingen aan de nodige velden. Dit zijn primary key en autonummering. Geef de velden het correcte datatype. We gaan hier overal werken met TEKST. Deze tabel zal in alle volgende lessen gebruikt worden om nieuwe oefeningen aan te maken.