Catch Up with Us!

Web Databases

Introduction

Modern websites and web applications rely heavily on databases to store, retrieve, and manage dynamic information. Unlike static web pages, most modern applications generate content in real time based on database queries.

For example:

  • E-commerce sites retrieve product data from databases
  • Social media platforms store posts, comments, and user profiles
  • Banking systems manage transactions and account data

Web Technologies and Databases

Web pages today are built using a combination of technologies:

  • Frontend: HTML, CSS, JavaScript (React, Angular, Vue)
  • Backend: Node.js, Python (Django/FastAPI), Java (Spring Boot), PHP
  • Databases: MySQL, PostgreSQL, MongoDB, Redis

Modern applications rarely connect directly from frontend to database. Instead, they use a backend API layer for security and scalability.

How Web Applications Use Databases

A typical modern flow is:

  1. User interacts with a web page
  2. Frontend sends a request to backend API
  3. Backend processes request
  4. Backend queries database
  5. Database returns results
  6. Backend sends structured response (usually JSON)
  7. Frontend renders data

Steps in Database Interaction (Modern Approach)

Although implementation details vary, the core steps remain:

1. Establish Connection

The application connects to a database using credentials or secure connection strings.

Modern tools:

  • PDO (PHP Data Objects)
  • MySQLi
  • ORM frameworks (Hibernate, Sequelize, SQLAlchemy)

2. Select Database

A database server may host multiple databases or schemas.

3. Prepare Query

Queries are written in SQL (Structured Query Language) or generated via ORM tools.

Example:

SELECT * FROM users WHERE status = 'active';

4. Execute Query

The backend sends the query to the database engine, which processes it and returns results.

5. Process Results

Results are:

  • Converted into objects or arrays
  • Transformed into JSON
  • Used to render web pages or APIs

6. Close Connection (or reuse via pooling)

Modern systems typically use connection pooling, so connections are reused instead of constantly opening and closing.

Modern PHP Example (Using PDO)

The older mysql_* functions are now deprecated. Modern PHP uses PDO (recommended):

<?php try {    $pdo = new PDO("mysql:host=localhost;dbname=dbName", "username", "password");    $stmt = $pdo->prepare("SELECT * FROM MYTABLE");    $stmt->execute();    $results = $stmt->fetchAll(PDO::FETCH_ASSOC);    foreach ($results as $row) {        echo $row['slno'] . "<br/>";    } } catch (PDOException $e) {    echo "Database error: " . $e->getMessage(); } ?>

Why Modern Code is Different

Compared to older PHP MySQL code, modern approaches include:

1. Security Improvements

  • Prepared statements prevent SQL injection
  • Parameterized queries
  • Secure credential handling

2. Better Abstraction

  • ORM tools eliminate manual SQL in many cases
  • Data is handled as objects instead of raw rows

3. Scalability

  • Connection pooling
  • Distributed databases
  • Cloud-managed databases

Modern Database Access Technologies

1. ORM (Object-Relational Mapping)

ORM frameworks simplify database interaction:

Language

ORM

Python

SQLAlchemy, Django ORM

Java

Hibernate

Node.js

Sequelize, Prisma

PHP

Doctrine

2. REST and GraphQL APIs

Instead of direct database access:

  • Frontend calls APIs
  • APIs handle database operations

Example:

GET /api/users POST /api/orders

3. Cloud Databases

Modern systems often use managed services:

  • Amazon RDS (MySQL/PostgreSQL)
  • Google Cloud SQL
  • Azure SQL Database
  • MongoDB Atlas (NoSQL)

4. NoSQL Databases

Used for flexible or large-scale systems:

  • MongoDB (document-based)
  • Redis (in-memory cache)
  • Cassandra (distributed systems)

Modern Architecture Trend

Today’s web database systems follow:

Backend-as-a-Service Model

  • APIs abstract database logic
  • Microservices handle specific data domains

Separation of Concerns

  • Frontend → UI
  • Backend → Logic
  • Database → Storage

Security Best Practices

Modern database-driven applications require:

  • Parameterized queries
  • Authentication & authorization (JWT, OAuth2)
  • Encrypted connections (TLS/SSL)
  • Least privilege database access
  • Input validation

Summary

Web databases are the backbone of modern web applications. While early systems connected directly using simple PHP functions, today’s systems are:

  • API-driven
  • Secure by design
  • Cloud-hosted
  • Scalable and distributed

Modern development emphasizes abstraction, security, and separation between frontend, backend, and database layers, making applications more robust and maintainable.

Comments