Welcome to the Database Management course! In this course, you will learn the fundamental concepts, principles, and techniques of managing and working with databases. Databases are essential for storing, retrieving, and organizing data in various applications, and this course will provide you with a solid foundation in designing, implementing, and maintaining databases.
- Course Code: SECP2523 - SECTION 1
- Instructor: ROZILAWATI BINTI DOLLAH @ MD ZAIN
- Credits: 3
- Prerequisites: Basic understanding of computer science and programming
- Format: In-person lectures, hands-on lab sessions, assignments, and a final project
By the end of this course, you will be able to:
- Understand the fundamental concepts of databases and their role in modern applications.
- Design and model relational databases using Entity-Relationship (ER) diagrams.
- Implement and manage databases using Structured Query Language (SQL).
- Explore database normalization techniques to eliminate data redundancy and improve data integrity.
- Utilize advanced SQL queries to retrieve and manipulate data.
- Gain insights into transaction management and database security.
- Work with real-world database management systems (DBMS) and tools.
-
Introduction to Databases
- Overview of databases and their applications
- Database management systems (DBMS) and their features
- Types of databases: relational, NoSQL, and more
-
Data Modeling and Design
- Entity-Relationship (ER) modeling
- Attributes, keys, and relationships
- Normalization: 1NF, 2NF, 3NF, and beyond
-
SQL Fundamentals
- Basic SQL queries: SELECT, INSERT, UPDATE, DELETE
- Filtering and sorting data
- Joins, subqueries, and aggregate functions
-
Advanced SQL
- Indexing and optimization
- Views and stored procedures
- Triggers and user-defined functions
-
Transaction Management
- ACID properties of transactions
- Concurrency control and isolation levels
- Handling deadlocks and data consistency
-
Database Security
- Authentication and authorization
- Role-based access control
- Encryption and data masking
-
NoSQL Databases
- Introduction to NoSQL databases
- Types of NoSQL databases: document, key-value, column-family, graph
- Comparing NoSQL and relational databases
-
Database Administration
- Backup and recovery strategies
- Performance monitoring and tuning
- Database maintenance and optimization
-
Final Project
- Design and implement a database for a specific application
- Project proposal, schema design, and implementation
- Participation: 10%
- Assignments: 30%
- Midterm Exam: 20%
- Final Project: 40%
- Textbook: "Database Systems: Design, Implementation, and Management" by Carlos Coronel, Steven Morris, and Peter Rob
- DBMS: MySQL, PostgreSQL, MongoDB (for NoSQL)