Argon Geplaatst: 10 mei 2006 Rapport Geplaatst: 10 mei 2006 (bewerkt) Hallo iedereen hier is dan de eerste tutorial over MySQL op gtaforum.nl, ik ga jullie hier de basis van MySQL uitleggen. En hoe je het kan gebruiken met PHP. Benodigdheden: (hier kom ik niet op terug in de tutorial zelf) - PHP kennis (alleen voor integratie met PHP) - PHPMyAdmin (weten hoe je vanalles kan uitvoeren op dit paneel) - host met PHP, MySQL en PHPMyAdmin Change log: - 10 mei 2006 16:20 SELECT deel toegevoegd - 13 mei 2006 10:05 UPDATE, DELETE en TRUNCATE deel toegevoegd Tutorial: Inleiding MySQL is een taal waarmee je informatie uit een database kan halen de data bewerken en verwijderen. Een database bestaat uit tabellen en die bestaan dan weer uit kolommen en rijen. We gaan in deze tutorial alleen maar leren hoe je met de tabelen zelf kan omgaan. Dit komt aanbod in de volgende stukken: TABLES INSERT SELECT UPDATE DELETE TRUNCATE (Alleen bij MySQL 5 te gebruiken) Tables Zoals eerder vermeld bestaat een database dus uit tabelen, en deze bestaat uit kollomen. Als je een nieuwe tabel wilt maken dan is het handig om een kolom te maken met de naam "id" en het zo in te stellen dat als je een nieuwe rij maakt de eerste het nummer 1 heeft als waarde in de kolom id en de 2de de waarde 2 enz. Waarom is dit handig kan je nu denken. Wel als je maar 1 rij wilt updaten dan moet je deze kunnen selecteren en de kolom heeft in iedere rij een ander waarde, dus zo kan je het makkelijk selecteren. In iedere kolom moet je het soort inhoud dat erin komt definieëren, dit is nodig als je een optimaal effect wilt hebben. Als je dit niet doet en je database gaat veel data bevaten dan word alles trager. Dit zijn de meest gebruikte: varchar (tekst en cijfers) (maximum 255 karakters als waarde) int (cijfers) (maximum 11 cijfers als waarde) longtext (tekst en cijfers (waarde is onbeperkt lang) Dit zijn de meest gebruikte maar er zijn er in totaal een kleine 30. Wat is de code om een tabel te maken? CREATE TABLE `tabelnaam` ( `id` int(11) NOT NULL auto_increment, `test` varchar(100) NOT NULL, `test2` longtext NOT NULL, PRIMARY KEY (`id`) ) AUTO_INCREMENT=1; Dit maakt dus een lege tabel met als kollomen "id"(int 11 cijfers), "test"(varchar 100 karakters), "test2"(longtext). En de kolom id begint met de waarde 1. (Als je in dit stukje code "AUTO_INCREMENT=1 ;" 1 vervangt door 11 begint hji bij 11) Als je tabelnaam verandert door "bla" dan noemt je tabel bla. INSERT In dit stukje ga ik uitleggen hoe je een rij toevoegt aan aan je tabel. Dit is eigelijk heel simpel, ik zal eerst een code geven om een rij toe te voegen aan de tabel die we daarstraks aangemaakt hebben. INSERT INTO `tabelnaam` ('id', 'test', 'test2') VALUES ('', 'Test', 'teks tekst'); Op de eerste lijn zeggen we dat we een rij gaan toevoegen met daarachter in welke tabel. Op de tweede lijn zeggen we welke waarde bij welke veld hoort. Op de derde lijn zeggen we dat we de waardes gaan geven Op de vierde lijn geven we de waardes gescheiden door een komma. Voor de kolom id geven we niks in omdat MySQL dit zelf doet. SELECT Ik zal eerst een stukje code geven en dan alles uitleggen: SELECT * FROM tabelnaam Dit stukje code selecteert alle kolomen en alle rijen van de tabel "tabelnaam" 1ste stuk SELECT we geven aan dat we gaan selecteren 2de stuk * we selecteren alle kolomen (je kan dit ook vervangen door "id" dan selecteren we alleen de gegevens van de kolom "id") 3de stuk FROM tabelnaam we geven een tabel op van waar we alles halen Maar het is moeilijker dan dit alles! Als je bijvoorbeeld maar 1 rij wilt selecteren kan je doen: SELECT * FROM tabelnaam WHERE id='1' Dit selecteert alleen de eerste rij. SELECT * FROM tabelnaam WHERE test='tekst' AND id='1' Dit geeft de rij terug waarbij de kolom id als waarde 1 heeft en de kolom test de waarde tekst heeft. (Dit is altijd 1 rij omdat id altijd een unieke waarde is) UPDATE Met update kan je de waardes van een tabel aanpassen wat wel is handig kan zijn. Voorbeeld: UPDATE `tabelnaam` SET `test` = 'nieuwe waarde' Uitleg: 1ste stuk(UPDATE): we zeggen dat we gaan updaten 2de stuk (`tabelnaam`): we zeggen in welke tabel 3de stuk SET: hierachter voeren we de waardes in die we gaan updaten 4de stuk (`test` = '...'): we geven een kolom naam op en daarachter de nieuwe waarde Om meer kollomen tegelijk te updaten doe je dit: UPDATE `tabelnaam` SET `test` = 'nieuwe waarde', `test2` = 'nieuwe waarde' Met een komma gevolgd dus. Ook kan je de WHERE clause gebruiken in je update query's (voorbeeld: ) UPDATE `tabelnaam` SET `test` = 'nieuwe waarde' WHERE id='1' Dit update dus alleen de rijen die als waarde in de kollom id 1 hebben. (1 rij dus) DELETE Met delete kan je een rij verwijderen uit een tabel of meerdere rijen of gewoon alle rijen. Hoe gebruiken: DELETE FROM `tabelnaam` Hiermee verwijderen we alle rijen uit de tabel. DELETE FROM `tabelnaam` WHERE id='1' Hiermee verwijderen we alle rijen waarbij de waarde van de kollom id 1 is. (in dit geval alleen de eerste rij dus. Je kan ook dit doen: DELETE FROM `tabelnaam` WHERE id='2' OR id='3' Dit verwijderd alle rijen waarbij de waarde van de kollom id 2 of 3 is. Uitleg: Het eerste stuk (DELETE FROM): we zeggen dat we gaan deleten Het tweede stuk (`tabelnaam`): we zeggen in welke tabel Het derde stuk (niet bij alle bovenstaande query's): we zeggen welke rijen (WHERE stuk) Truncate (Allen bij MySQL 5 te gebruiken) Met truncate kan je een hele tabel legen en de auto increment terug op 1 zetten. Hoe gebruiken: TRUNCATE TABLE `tabelnaam` Met het stukje "TRUNCATE TABLE" zeggen we dus dat we een tabel willen legen en auto increment op 0 zetten. En tussen de ``'s staat de tabelnaam. (de ``'s mogen weggelaten worden) Nog fouten gezien of wil je nog meer informatie of iets, meld het me! _______ Gunslinger: Toegevoegd aan de MTL Bewerkt: 10 april 2008 door Argon Reageren
Jarno Geplaatst: 10 mei 2006 Rapport Geplaatst: 10 mei 2006 Mooie tutorial voor mensen die PHP basis al kennen en ledensystemen etc. willen maken. Reageren
Le MrG Geplaatst: 10 mei 2006 Rapport Geplaatst: 10 mei 2006 Misschien kun je later ook nog wat uitleggen over TRUNCATE ? Reageren
Argon Geplaatst: 10 mei 2006 Auteur Rapport Geplaatst: 10 mei 2006 Misschien kun je later ook nog wat uitleggen over TRUNCATE ? Daar valt toch niks over uit te leggen, maar die functie bestaat alleen in MySQL 5 denk ik en het is dus beter nog te gebruiken: DELETE * FROM `tabelnaam` Omdat veel hosts nog geen MySQL 5 hebben. Reageren
Goofy Geplaatst: 10 mei 2006 Rapport Geplaatst: 10 mei 2006 TRUNCATE daar heb ik nog nooit van gehoord. Maar ja het zit ook alleen maar in MySQL 5 die heb ik dus niet . Reageren
Le MrG Geplaatst: 10 mei 2006 Rapport Geplaatst: 10 mei 2006 Met dat commando kun je de gehele inhoud van een table verwijderen Reageren
Marius Geplaatst: 11 mei 2006 Rapport Geplaatst: 11 mei 2006 Met het commando TRUNCATE leeg je inderdaad een tabel maar zet je ook alles weer op standaard, bijvoorbeeld de PRIMARY_KEY op beginwaarde. Reageren
Argon Geplaatst: 13 mei 2006 Auteur Rapport Geplaatst: 13 mei 2006 (bewerkt) Met het commando TRUNCATE leeg je inderdaad een tabel maar zet je ook alles weer op standaard, bijvoorbeeld de PRIMARY_KEY op beginwaarde. Ik heb TRUNCATE, DELETE en UPDATE toegevoegd. Mag deze niet bij de master tutorial list Gunslinger? (edit: fout gekeken ) Bewerkt: 13 mei 2006 door juuldr Reageren
Recommended Posts
Een reactie plaatsen
Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.