Untitled24.ipynb - Colab
Untitled24.ipynb - Colab
# Initialize Digraph
er_diagram = Digraph('ER_Diagram', node_attr={'shape': 'record', 'height': '.7'})
# Branch Entity
er_diagram.node('Branch', '{Branch | Branch ID (PK) | Name | Address | Employees | Opening Days | Opening Hours}')
# Product Entity
er_diagram.node('Product', '{Product | Product ID (PK) | Name | Type | Packaging | Volume | Price | Brand | Stock Level}')
# Staff Entity
er_diagram.node('Staff', '{Staff | Staff ID (PK) | Name | Role | Employment Type | Salary | Reports To | Branch ID (FK)}')
# Membership Entity
er_diagram.node('Membership', '{Membership | Membership ID (PK) | Name | Membership Type | Expiration Date | Branch ID (FK)}')
# Relationships
er_diagram.edge('Branch', 'Staff', label="Has Many")
er_diagram.edge('Branch', 'BranchProduct', label="Sells Products")
er_diagram.edge('Product', 'BranchProduct', label="Available in")
er_diagram.edge('Branch', 'Membership', label="Has Members")
Product
Branch Product ID (PK)
Branch ID (PK) Name
Name Type
Address Packaging
Employees Volume
Opening Days Price
Opening Hours Brand
Stock Level
Staff
Staff ID (PK) Membership
Name Membership ID (PK)
BranchProduct
Role Name
Branch ID (FK)
Employment Type Membership Type
Product ID (FK)
Salary Expiration Date
Reports To Branch ID (FK)
Branch ID (FK)