Database Management

Overview

This repository contains my work and exercises on Database Management concepts. The repository is designed to provide a thorough understanding of database systems, including relational databases, SQL queries, and database design principles.

Key Sections:

  • SQL Queries: Examples of various SQL queries for CRUD operations, joins, subqueries, and more.
  • Database Design: Covers normalization, entity-relationship diagrams (ERD), and database schemas.
  • Stored Procedures & Triggers: Demonstrates how to write and use stored procedures, functions, and triggers in databases.

Folder Structure

database_management/
│
├── SQL_Queries/               # Contains SQL query examples and exercises
│   ├── basic_crud.sql         # Basic Create, Read, Update, Delete operations
│   ├── advanced_joins.sql     # SQL Joins and advanced queries
│   └── subqueries.sql         # Subqueries and nested queries
│
├── Database_Design/           # ERD diagrams, database schemas, and normalization examples
│   ├── erd_diagrams.md        # Entity-relationship diagrams for database design
│   └── normalization.md       # Database normalization examples and explanations
│
└── Stored_Procedures/         # Examples of stored procedures and triggers
    ├── procedures.sql         # SQL procedures for complex operations
    └── triggers.sql           # Database triggers for automation

Getting Started

  1. Clone the repository:

    git clone https://github.com/josethomas45/database_management.git
  2. Navigate to specific folders: Each folder contains exercises, examples, or code implementations for specific database topics.

  3. Run SQL queries: To execute the SQL scripts, you can use any SQL database management system like MySQL, PostgreSQL, or SQLite.


Key Topics Covered

  1. SQL Queries:

    • Basic and advanced SQL queries for managing data.
    • Examples include SELECT, INSERT, UPDATE, DELETE, JOIN, GROUP BY, and more.
  2. Database Design:

    • Entity-relationship diagrams (ERDs) for visualizing database design.
    • Principles of database normalization (1NF, 2NF, 3NF) to optimize database structures.
  3. Stored Procedures and Triggers:

    • Examples of stored procedures for reusable SQL code.
    • Use of triggers to automate actions in a database.

Requirements

  • MySQL: Recommended for running the SQL scripts.
  • PostgreSQL or SQLite: Alternatives for running the SQL code.
  • SQL Workbench: Optional, for visualizing and interacting with databases.

How to Contribute

We welcome contributions to improve the repository. Please follow the steps below:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Make changes and commit them (git commit -m 'Add new feature').
  4. Push the changes to your branch (git push origin feature-branch).
  5. Create a pull request.

License

This repository is licensed under the MIT License. See the LICENSE file for more details.


Contact

For any questions, issues, or suggestions, feel free to reach out to the repository owner:

Jose Thomas
GitHub Profile