Final Project Report - Group 3 - 2107
Final Project Report - Group 3 - 2107
Al Rajhi Bank's
Group 3
Sec: 2107
Cours: MIS 309
INSERT INTO Customer (Name, Address, Phone) VALUES ('Mohammed Ali', '123
King Fahd Rd, Riyadh', '050 123 4567');
INSERT INTO Customer (Name, Address, Phone) VALUES ('Fatima Khalid', '456
Prince Sultan St, Jeddah', '050 234 5678');
INSERT INTO Customer (Name, Address, Phone) VALUES ('Ahmed Zaki', '789
Tahlia St, Riyadh', '050 345 6789');
INSERT INTO Customer (Name, Address, Phone) VALUES ('Sara Amjad', '321 Al
Amir Sultan, Jeddah', '050 456 7890');
INSERT INTO Customer (Name, Address, Phone) VALUES ('Khaled Tareq', '654 Al
Olaya, Riyadh', '050 567 8901');
INSERT INTO Customer (Name, Address, Phone) VALUES ('Noor Sami', '987 Al
Khobar Shores, Khobar', '050 678 9012');
INSERT INTO Customer (Name, Address, Phone) VALUES ('Omar Farouk', '159 Al
Tahlia, Jeddah', '050 789 0123');
INSERT INTO Customer (Name, Address, Phone) VALUES ('Laila Bassam', '213
King Abdulaziz Rd, Riyadh', '050 890 1234');
INSERT INTO Customer (Name, Address, Phone) VALUES ('Youssef Adel', '468
Corniche Rd, Dammam', '050 901 2345');
INSERT INTO Customer (Name, Address, Phone) VALUES ('Nadia Yasser', '752 Al
Andalus, Jeddah', '050 012 3456');
Normalization Analysis:
1NF (First Normal Form):
Achieved as each column holds atomic values, and each record is uniquely identified
by the primary key CustomerID.
Normalization Analysis:
1NF (First Normal Form):
Achieved as each column holds atomic values, and each record is uniquely identified
by the primary key TransactionID.
INSERT INTO Employee (BranchID, Name, Position) VALUES (1, 'Ali Hassan',
'Manager');
INSERT INTO Employee (BranchID, Name, Position) VALUES (2, 'Huda Faisal',
'Assistant Manager');
INSERT INTO Employee (BranchID, Name, Position) VALUES (3, 'Majed Saleh',
'Teller');
INSERT INTO Employee (BranchID, Name, Position) VALUES (4, 'Rania Yousif',
'Customer Service Rep');
INSERT INTO Employee (BranchID, Name, Position) VALUES (5, 'Faisal Omar',
'Manager');
INSERT INTO Employee (BranchID, Name, Position) VALUES (6, 'Lama Ayman',
'Teller');
INSERT INTO Employee (BranchID, Name, Position) VALUES (7, 'Sami Nasser',
'Loan Officer');
INSERT INTO Employee (BranchID, Name, Position) VALUES (8, 'Reem Khaled',
'Teller');
INSERT INTO Employee (BranchID, Name, Position) VALUES (9, 'Kareem Ahmad',
'Manager');
INSERT INTO Employee (BranchID, Name, Position) VALUES (10, 'Sara Abdullah',
'Assistant Manager');
Normalization Analysis:
1NF (First Normal Form):
The table is in 1NF as each column holds atomic values, and each record is unique
through the primary key EmployeeID.
2NF (Second Normal Form):
Achieved, as there are no partial dependencies of any column on the primary key.
Each non-key column (Name, Position, BranchID) is fully functionally dependent on
the primary key.
INSERT INTO Branch (Address, Phone) VALUES ('100 Main St, Riyadh', '011 123
4567');
INSERT INTO Branch (Address, Phone) VALUES ('200 Second St, Jeddah', '012 234
5678');
INSERT INTO Branch (Address, Phone) VALUES ('300 Third St, Dammam', '013
345 6789');
INSERT INTO Branch (Address, Phone) VALUES ('400 Fourth St, Medina', '014 456
7890');
INSERT INTO Branch (Address, Phone) VALUES ('500 Fifth St, Mecca', '015 567
8901');
INSERT INTO Branch (Address, Phone) VALUES ('600 Sixth St, Khobar', '016 678
9012');
INSERT INTO Branch (Address, Phone) VALUES ('700 Seventh St, Tabuk', '017 789
0123');
INSERT INTO Branch (Address, Phone) VALUES ('800 Eighth St, Taif', '018 890
1234');
INSERT INTO Branch (Address, Phone) VALUES ('900 Ninth St, Najran', '019 901
2345');
INSERT INTO Branch (Address, Phone) VALUES ('1000 Tenth St, Al Qassim', '020
012 3456');
Normalization Analysis:
1NF (First Normal Form):
The table is in 1NF as each column holds atomic values, and each record is unique
through the primary key BranchID.
Normalization Analysis:
1NF (First Normal Form):
The table is in 1NF as each column holds atomic values (single values), and each record
is uniquely identified by the primary key LoanID.
Normalization Analysis:
1NF (First Normal Form):
The table is in 1NF as each column holds atomic values (single values), and each record
is uniquely identified by the primary key InvestmentID.
Normalization Analysis:
1NF (First Normal Form):
Achieved as each column holds atomic values, and each record is uniquely identified
by the primary key ATMID.
Normalization Analysis:
1NF (First Normal Form):
Achieved as each column holds atomic values, and each record is uniquely identified
by the primary key CardID.
Normalization Analysis:
1NF (First Normal Form):
Achieved as each column holds atomic values, and each record is uniquely identified
by the primary key BoxID.
2. Account Table:
- Primary Key (PK): AccountID
- Foreign Key (FK): CustomerID (References CustomerID in Customer table)
3. Transaction Table:
- Primary Key (PK): TransactionID
- Foreign Keys (FKs):
- AccountID (References AccountID in Account table)
- EmployeeID (References EmployeeID in Employee table)
4. Employee Table:
- Primary Key (PK): EmployeeID
- Foreign Key (FK): BranchID (References BranchID in Branch table)
5. Branch Table:
- Primary Key (PK): BranchID
- Foreign Key (FK): None (This table serves as a foundational structure for other
tables like Employee)
6. Loan Table:
- Primary Key (PK): LoanID
- Foreign Key (FK): AccountID (References AccountID in Account table)
7. Investment Table:
- Primary Key (PK): InvestmentID
- Foreign Key (FK): CustomerID (References CustomerID in Customer table)
8. ATM Table:
- Primary Key (PK): ATMID
- Foreign Key (FK): ManagedBy (References EmployeeID in Employee table)
9. Credit Card Table:
- Primary Key (PK): CardID
- Foreign Key (FK): AccountID (References AccountID in Account table)
Recommendations:
1. Maintain data integrity through regular monitoring and validation.
2. Design the database structure to be scalable for future growth and changes.
3. Implement robust security measures to protect sensitive data.
4. Optimize database performance for efficient operations.
5. Establish a backup and recovery strategy to mitigate data loss risks.
6. Provide adequate user training and documentation for effective database utilization.
7. Ensure regulatory compliance with relevant laws and standards.
These recommendations aim to support the bank in managing its database securely,
efficiently, and in compliance with industry requirements.