DEV Community

Kristy Whalen
Kristy Whalen

Posted on

I've been working through Udemy courses with Python

I stumbled across this site today, and was reading the article on MongoDB, and why one SHOULD NOT use it. The reason I ended up on this site is that I have fallen down the "IT rabbit hole" that was formerly known as "curiousity killed the cat". Like many on Udemy I've bought many courses, with realistically little time to complete them. Currently I'm working through a Python-centered course where you end up with some "projects" completed at the end. At the moment the instructor Ardit is talking about databases. In his course he mostly talks about SQL-centered databases, namely PostgreSQL, SQLite and MySQL. Yet in other courses I have participated in, the instructor hypes things like MongoDB. My question is this: I'm mostly interested in SQL-centered databases, I do not work as a developer, and I'm mostly interested in making little apps that will improve my life or maybe help me in making 2D-based games. Which databases do you recommend? One thing that turns me off is the idea of SQL-centered databases that require a "server" running. I would prefer to have my databases in the same folder my source code is in.

EDIT 0: I would like to be able to use SQL on a database that doesn't require a "service" or "server" running. At the moment it appears that Sqlite is already supported by Python3 as a native module, and that I can use a Sqlite-centered gui to create and 'view' the layout of my scheme.

Edit 1: I'm not really qualified on the topic to converse with anyone who might comment on my post, and I admit to being a little socially awkward. Just know that I do appreciate any feedback, and I feel I would most benefit by reading conversation between YOU guys. :-)

Top comments (2)

Collapse
 
slick3gz_ profile image
Slick3gz • Edited

Use the right database for the job. Databases tend to be grouped into Relational (SQL: MySQL, MariaDB, Postgres) and Non-Relational (NoSQL: MongoDB, CouchDB, Redis) databases. SQL databases work well for well structured data that can be normalized. NoSQL databases manifest in different forms such as key/value store, document based, or graph based. All are geared towards different use cases and present advantages and disadvantages. I'm partial to SQL databases because I was exposed to them first.
You may be able to use CSV to store your values if they are not complex. There is also sqlite.

Collapse
 
angelbearuk profile image
Kristy Whalen

Late last night I started trying MySQL, and I like it! Some of the table set up is confusing, such as how to make it so that new records have their primary key auto-incremented.