| Version 4 (modified by , 10 days ago) ( diff ) |
|---|
Relational Design for Handcraft Marketplace
Notation
- Primary keys are bolded and underlined.
- Foreign keys are marked with
*at the end of their name and the referenced entity is written in parentheses. - Complex attributes are bolded, and their containing attributes are following the, made italic.
- Multivalued attributes have their own table
Tables
- PRODUCT (
code,price,availability,dimensions,weight,width_X_length_X_depth,aprox_production_time,description)- image (multi-valued attribute, see table COLORS)
- color (multi-valued attribute, see table IMAGE)
- IMAGE (
product_code*(PRODUCT),image)
- COLOR (
product_code*(PRODUCT),color)
- STORE (
store_ID,name,date_of_founding,physical_address,store_email,rating)
- PERSONAL (
SSN,name,first_name,last_name,email,password)- permissions (complex, multi-valued attribute, see table PERMISSIONS)
- PERMISSIONS (
personal_SSN*(PERSONAL),type,authorisation)
- BOSS (
boss_SSN*(PERSONAL))
- EMPLOYEES (
employee_SSN*(PERSONAL),date_of_hire)
- CLIENT (
client_ID,name,first_name,last_name,email,password)- delivery_address (multi-valued attribute, see table DELIVERY_ADDRESS)
- DELIVERY_ADDRESS (
client_ID(CLIENT),address)
- ORDER (
order_num,client_ID*(CLIENT),quantity,status,last_date_mod,payment_method,discount)
- REPORT (
date,store_ID*(STORE),overall_profit,sales_trend,marketing_growth,owner_signature)- monthly_profit (multi-valued attribute, see table MONTHLY_PROFIT)
- MONTHLY_PROFIT (
report_date*(REPORT),store_ID*(REPORT),month_and_year,profit)
- REQUEST (
request_num,date_and_time,problem,notes_of_communication,costumer_satisfaction)
- MAKES_REQUEST (
client_ID*(CLIENT),order_num*(ORDER))
- ANSWERS (
request_num*(REQUEST),personal_SSN*(PERSONAL))
- FOR_STORE (
request_num*(REQUEST),store_ID*(STORE))
- REVIEW (
order_num*(ORDER),comment,rating,last_mod_date)
- CHANGE (
date_and_time,changes_made,previous_version,new_version)
- MAKES_CHANGE (
personal_SSN*(PERSONAL),change_date_time*(CHANGE))
- MADE_ON (
product_code*(PRODUCT),change_date_time*(CHANGE))
- WORKS_IN_STORE (
personal_SSN*(PERSONAL),store_ID*(STORE))
- WORKED (
personal_SSN*(PERSONAL),report_date*(REPORT),store_ID*(REPORT),wage,pay_method,working_hours,total,total_week)
- SELLS (
product_code*(PRODUCT),store_ID*(STORE),discount)
- INCLUDES (
order_num*(ORDER),product_code*(PRODUCT))
- APPROVES (
boss_SSN*(BOSS),report_date*(REPORT),owner_signature,store_ID*(REPORT))
- EXCHANGES_DATA (
report_date*(REPORT),store_ID*(STORE),monthly_profit,date,sales,damages,store_ID*(REPORT))- store_ID is also added as a regular attribute because it is being included in the report. This is necessary as reports made by different stores, on the same day need to be differentiated.
DDL скрипта за креирање и бришење на табелите
DML скрипта за полнење на табелите со податоци
Релациски дијаграм изваден од DBeaver
Attachments (4)
- handcrafts-marketplace.png (138.1 KB ) - added by 3 days ago.
- handcrafts-marketplace-with-help-of-AI.png (230.7 KB ) - added by 18 hours ago.
- final-handcrafts-marketplace-with-help-of-AI.png (169.5 KB ) - added by 15 hours ago.
- final-handcrafts-marketplace-with-help-of-AI-after-consultations.png (196.7 KB ) - added by 15 hours ago.
Download all attachments as: .zip
Note:
See TracWiki
for help on using the wiki.
