@Snics een vraagje... Hoe kan je het beste MongoBD (Geen idee hoe je het precies schrijft) leren. Het ook soort Database maar dan net iets anders dan MySql heb ik ooit ergens gehoord. Is Mongo ongeveer het zelfde als MySql of SQL?
Hey, ik kan hier wel op antwoorden, heb aardig ervaring met MongoDB.
MongoDB is inderdaad een database, maar geen relationele database. Dat wil zeggen dat er geen tabellen zijn van rijen en kolommen, en er zijn geen relaties. In plaats daarvan heeft MongoDB 'collections' van 'documents'. Een document in MongoDB is een JSON document, maar ze worden natuurlijk opgeslagen in een binair formaat,
bson. Ieder document in een collection heeft altijd minstens één key en dat is '_id', dat kun je zien als primary key. Voor de rest zijn collections in MongoDB 'schemaless', wat inhoudt dat documents in de collections niet dezelfde keys hoeven te hebben. Er is geen vaste structuur.
Toevoegen, opvragen of aanpassen van documents in een collection gaat ook niet met SQL, maar ook met documents. In de commandline client van MongoDB,
mongo, kun je letterlijk javascript uitvoeren. Een voorbeeld van een nieuw document toevoegen:
db.users.insert({name: "Jan"})
De collection die ik hier gebruik heet 'users', en het document dat ik toevoeg aan de collection geef ik mee als object literal aan de insert functie. Als een collection nog niet bestaat maakt MongoDB die zelf automatisch aan.
MongoDB maakt zelf ook een _id aan voor documenten als je die niet meegeeft, dus als ik alle users met de naam 'Jan' wil opvragen
db.users.find({name: "Jan"})
dan krijg ik ook een _id veld terug.
{"_id": ObjectId("48107389af13daf") , "name": "Jan"}
Ik kan je nog veel meer vertellen, maar dat gaat te ver voor dit forumtopic. Als je meer over MongoDB wilt leren, en specifiek hoe je het gebruikt met Java, dan raad ik aan om de gratis cursus '
m101j' te volgen bij MongoDB University, deze heb ik zelf ook gevolgd.
en
@Snics NoSQL staat voor Not Only SQL, waar MongoDB inderdaad onder valt, maar er bestaan nog genoeg andere niet-relationele databases. Denk bijvoorbeeld aan Redis of Cassandra. Zeggen dat MongoDB hetzelfde is als NoSQL klopt dus niet.