Hello Dev Community! 👋
It is officially Day 76 of my 100-day full-stack engineering streak! For the past several weeks, I have been heavily immersed in NoSQL databases, using MongoDB documents to back my full-stack clones. Today, I decided to broaden my database engineering skill set by taking a deep dive into Relational Databases (SQL)! 📊⚡
Stepping out of flexible JSON-like structures and adjusting to rigid, highly optimized tables is an essential step for any well-rounded backend developer.
🧠 What I Learned Today: SQL vs. NoSQL
Before writing code, I mapped out the core architectural differences between the two paradigms:
| Feature | NoSQL (e.g., MongoDB) | SQL (e.g., MySQL / PostgreSQL) |
|---|---|---|
| Data Model | Flexible, schema-less collections & documents. | Strict table-based structures with rows & columns. |
| Relationships | Typically nested embedded sub-documents or references. | Explicit Relational Mapping via Primary & Foreign Keys. |
| Scaling | Horizontally scalable (distributed sharding across nodes). | Vertically scalable (requires increasing horsepower on one machine). |
| Transactions | Great for high-write, unstructured or dynamic data shapes. | Strict ACID compliance, making it excellent for financial or tabular data. |
🛠️ Analyzing My First Query Block on Day 76
As showcased in "Screenshot (174).png", I configured an entire relational lifecycle inside an independent database script:
1. Database Provisioning & Focus Selection
I initialized the data cluster safely using standard syntax constraints to ensure execution safety and loaded the working context into the active engine:
sql
CREATE DATABASE IF NOT EXISTS XYZ_Company;
USE XYZ_Company;CREATE TABLE employee_info (
id INT PRIMARY KEY,
name VARCHAR(30),
SALARY INT
);
Top comments (0)