Week 5 Back End - mbergevoet/blok-tech GitHub Wiki

SQL & NoSQL

Er zijn twee belangrijke database types. Structured Query Language en Non Structures Querey Language. Het belangrijkste verschil tussen deze twee is dat SQL veel complexer kan worden. Een Database bestaat uit een tabel met rijen en kolommen waarin data staat opgeslagen. Het grootste voordeel van SQL is dat je datatabellen aan elkaar kan koppelen met behulp van relaties. Bijvoorbeeld je hebt een tabel met daarin mensen. Sommige mensen hebben een beroep. Je kunt dan een aparte tabel aanmaken voor een beroep en data daar over in die tabel zetten. Dan kun je een die twee tabellen aan elkaar linken als het waren en een beroep toekennen aan een persoon zonder dat alle informatie over één persoon in één tabel staat. Met SQL kun je ook complexere zoek opdrachten uitvoeren genaamd query's. Met NoSQL kan je ook data opvragen uit een datatabel maar die query's kunnen niet zo complex zijn als bij SQL. Bron: https://www.thegeekstuff.com/2014/01/sql-vs-nosql-db/

MongoDB

Nu ik een client side server heb geschreven en daarin data heb toegevoegd, verwijderd en veranderd is het nu de bedoeling dat ik met MongoDB een database ga hosten met Atlas en die koppelt zal worden aan mijn server en de data zal opslaan die daar in gaat. Atlas is een gratis service die MongoDB aanbied samen met hun UI Compass. Daarmee kun je bijvoorbeeld json bestanden uploaden naar de server en nieuw collections aamaken om data in te stoppen. Om te kunnen verbinden met je Mongodb database heeft de server, de port, host en de database naam nodig. Die haalt de server uit een .env bestand en met een functie kan de server de URL "bouwen" en een verbinding maken met de MongoDB Atlas database.

Sessions

Dit is een manier waarop je data die is ingevoerd door de gebruiker tijdelijk kunt opslaan in de browser. Zo kun je de inlog gegevens van een gebruiker tijdelijk opslaan en de server zo schrijven dat hij de komende paar minuten niet weer opnieuw hoeft in te loggen als de pagina wordt gerefreshed. Ik wil een session gaan gebruiken in mijn feature om een bepaalde filter optie tijdelijk op te slaan. De server moet checken of er al een filter is ingevoerd als je terug zou gaan naar het zoek formulier, als dat het geval is 'route' de server je gelijk weer terug naar de pagina waarop de resultaten worden gerenderd.

Bron: Slides en lessen