This project demonstrates my ability to develop a comprehensive database solution from scratch, tailored for a fictional music label. The project involved projecting ER and Conceptual Diagrams, implementing entities, and finding optimal solutions for various fictional problems and requirements.
Full documentation Here.
-
Briefly present the database (its utility).
-
Create the entity-relationship diagram (ERD): entities, relationships, and attributes must be defined in Romanian (see the DBMS course, entity-relationship diagram model; no other format will be accepted).
- Based on the entity-relationship diagram, create the conceptual diagram of the proposed model, integrating all necessary attributes: entities, relationships, and attributes must be defined in Romanian.
-
Implement the conceptual diagram in Oracle: define all tables, adding all necessary integrity constraints (primary keys, foreign keys, etc.).
-
Add coherent information to the created tables (at least 5 records for each independent entity; at least 10 records for each associative table).
-
Formulate a problem in natural language to solve using an independently stored subprogram that uses all 3 types of collections studied. Call the subprogram.
-
Formulate a problem in natural language to solve using an independently stored subprogram that uses 2 different types of cursors studied, one of which is a parameterized cursor dependent on the other cursor. Call the subprogram.
-
Formulate a problem in natural language to solve using an independent stored function that uses 3 of the created tables in a single SQL command. Handle all possible exceptions, including predefined exceptions NO_DATA_FOUND and TOO_MANY_ROWS. Call the subprogram to highlight all treated cases.
-
Formulate a problem in natural language to solve using an independent stored procedure with at least 2 parameters and that uses 5 of the created tables in a single SQL command. Define at least 2 custom exceptions, other than the predefined system-level exceptions. Call the subprogram to highlight all defined and treated cases.
-
Define a command-level DML trigger. Fire the trigger.
-
Define a row-level DML trigger. Fire the trigger.
-
Define a DDL trigger. Fire the trigger.
- Formulate a problem in natural language to solve using a package that includes complex data types and objects necessary for an integrated action flow specific to the defined database (at least 2 data types, at least 2 functions, at least 2 procedures).