Welcome to the repository for the Database Management Systems Laboratory (310246) course, a core component of the Third Year Computer Engineering curriculum (2019 Course) at Savitribai Phule Pune University. This repository provides practical implementations and resources to help you develop essential database design, programming, administration, and NoSQL skills.
🏛️ Course Information:
Feature | Description |
---|---|
University | Savitribai Phule Pune University |
Course Name | Database Management Systems Laboratory (310246) |
Companion Course | Database Management Systems (310241) |
Credit | 02 |
Practical Sessions | 04 Hours/Week |
Examination Scheme | Term Work: 25 Marks Practical Exam: 25 Marks |
🎯 Learning Objectives:
- Master database programming skills using SQL and PL/SQL.
- Develop fundamental database administration skills.
- Gain hands-on experience with NoSQL databases (MongoDB).
- Understand and implement the software application development process, integrating database concepts.
💡 Course Outcomes:
Upon successful completion of this laboratory course, students will be able to:
- CO1: Design Entity-Relationship (ER) models for given requirements and translate them into relational database tables.
- CO2: Design database schemas in appropriate normal forms to meet specific requirements.
- CO3: Implement SQL queries using various SQL concepts to retrieve and manipulate data.
- CO4: Implement PL/SQL code blocks to address complex database operations and logic.
- CO5: Implement NoSQL queries using MongoDB.
- CO6: Design and develop applications that effectively utilize database concepts.
📂 Practical Implementations:
Practical No. | Description |
---|---|
1 | ER Modeling & Normalization: 1. Choose a real-world case study and formulate a problem statement (in groups of 2-3 students). 2. Design a conceptual ER model using tools like ERD Plus or ERWin. 3. Convert the ER diagram into relational tables and normalize the schema. Note: This problem statement will be used throughout the assignments to design and develop a mini-project application. |
2 | SQL Queries (DDL & DML): 1. Design and implement SQL DDL statements to create tables, views, indexes, sequences, synonyms, and constraints. 2. Write at least 10 SQL DML queries (insert, select, update, delete) using operators, functions, and set operators, as guided by the instructor. |
3 | SQL Queries (Joins, Subqueries, Views): 1. Write at least 10 SQL queries focusing on joins (inner, outer, self), subqueries, and views, as guided by the instructor. |
4 | Unnamed PL/SQL Block (Control Structures & Exception Handling): 1. Implement a PL/SQL code block (using control structures and exception handling) based on a problem statement provided by the instructor (e.g., library fine calculation, area of a circle). |
5 | Named PL/SQL Block (Stored Procedures & Functions): 1. Write a stored procedure (e.g., proc_Grade for student categorization) and a PL/SQL block to use it. 2. The instructor will provide a specific problem statement. |
6 | Cursors (Implicit, Explicit, FOR Loop, Parameterized): 1. Write a PL/SQL block using a parameterized cursor to merge data between two tables, handling duplicates. 2. The instructor will provide a detailed problem statement. |
7 | Database Triggers (Row/Statement Level, Before/After): 1. Create a database trigger on a table (e.g., Library) to track updates and deletions, storing old values in an audit table. 2. The instructor will provide a specific problem statement and table structure. |
8 | Database Connectivity (MySQL/Oracle): Develop a program using a front-end language (e.g., Java, Python) to connect to a MySQL/Oracle database and implement basic navigation operations (add, delete, edit). |
9 | MongoDB Queries (CRUD Operations): Design and implement MongoDB queries using CRUD operations (create, read, update, delete), the save method, and logical operators. |
10 | MongoDB (Aggregation & Indexing): Design and implement MongoDB queries using aggregation and indexing techniques. |
11 | MongoDB (MapReduce Operations): Implement MapReduce operations in MongoDB with a suitable example. |
12 | Database Connectivity (MongoDB): Write a program using a front-end language to connect to MongoDB and implement basic database navigation operations (add, delete, edit). |
🚀 Getting Started:
Navigate to the relevant practical implementation directory for instructions, code examples, and database setup details.
🙌 Contributions:
Contributions, enhancements, and feedback are welcome! If you have any improvements, bug fixes, or additional examples to share, please open a pull request. Refer to the CONTRIBUTING.md
file for guidelines.
📄 License:
This repository is distributed under the MIT License. You are free to use, modify, and distribute the code for educational and personal projects.