(8 % ) Create four views to provide for the company superiors and management. The views should contain information that is important for the management of the company Idea of views is to combine data from various tables to provide an easier access to the combined information. The view does not have to be the final query result (i.e. View is used for easier access and then queried again for more detailed information) Each view should join at least two tables (not including linking tables) (15 % ) Create three triggers for the database: One for before inserting a new skill, make sure that the same skill does not already exist One for after inserting a new project, check the customer country and select three employees from that country to start working with the project (i.e. create new project roles) One for before updating the employee contract type, make sure that the contract start date is also set to the current date and end date is either 2 years after the start date if contract is of Temporary type, NULL otherwise. (Temporary contract in Finnish is "määräaikainen". It's a contract that has an end date specified). (9 %) Create three procedures for the database: Procedure that sets all employees salary to the base level based on their job title Procedure that adds 3 months to all temporary contracts Procedure that increases salaries by a percentage based on the given percentage. You can also specify the highest salary to be increased (give limit X and salaries that are below X are increased). EDIT 20.04.2023: The user can specify the salary limit when calling the procedure. If user doesn't specify one (or gives 0 or null), then the limit is not considered. The percentage can be given in decimals or numbers or what ever you specify, as long as the procedure works. (8 %) Partition two of the following tables to at least three partitions (excluding default partition): Employee table Customer table Project table Note! You may have to create partitions based on the primary key unless you come up with another method (6 %) Create access rights: Create three roles - admin, employee, trainee. Give admin all administrative rights (same rights as postgres superuser would have) Give employee rights to read all information but no rights to write Give trainee rights to read ONLY project, customer, geo_location, and project_role tables as well as limited access to employee table (only allow reading employee id, name, email) (4 %) Do the following changes to the database: Add zip_code column to Geo_location (you don't have to populate it with data) Add a NOT NULL constraint to customer email and project start date Add a check constraint to employee salary and make sure it is more than 1000. You may have to update the salary information to be able to add the constraint (unless you have already done so)