Entity-Relationship Diagram of the Event Participation Database
This project is a relational database system developed to manage event participation. The database efficiently tracks participants, events, and the relationships between them. It includes several core features, such as participant and event management, auditing, and trigger-based logging to ensure data integrity and smooth operations.
- Participant Management: Track participants' personal details and their engagement with events.
- Event Management: Record and monitor event details such as administrators, locations, and event schedules.
- Auditing: Track and log operations (INSERT, UPDATE, DELETE) on critical tables using triggers and log tables.
- Participation Monitoring: Efficiently track who attends which events and log their participation.
- Oracle Database 19c: The backend database for storing and querying the data.
- PL/SQL: Used to create stored procedures, triggers, functions, and exception handling.
- SQL Developer: Tool for developing and managing Oracle databases.
- Entity-Relationship Model (ERM): Used for designing the database architecture and relationships.
- Handling Complex Foreign Keys: Managing foreign key relationships between multiple tables required careful planning, especially with cascading actions.
- Trigger Optimization: Optimizing trigger performance was critical to ensure the system ran smoothly without lag.
- Ensuring Data Integrity: Data validation, especially with multiple foreign keys, was a constant focus to avoid any inconsistencies.
- Clone the repository:
git clone https://github.com/leitidev/database-management-system - Open the project in Oracle SQL Developer.
- Execute the provided SQL scripts to create tables, triggers, and procedures.
- Test the database by inserting sample data and observing the triggers and audit logs.
If you would like to contribute to this project, feel free to fork the repository and submit a pull request.