MobileTechHub is a simple database-driven desktop application designed for a retail mobile phone shop based in Colombo, Sri Lanka. It allows users to manage customers, products, sales, returns, and repairs through a Python GUI and a Microsoft SQL Server database.
- Frontend: Python
Tkinter - Backend: Microsoft SQL Server
- Connector:
pyodbcfor database communication - IDE: VS Code / SSMS / Python 3.x
MobileTechHub-ADBMS-System/
βββ app/
β βββ **init**.py
β βββ gui.py # Main GUI application
β βββ customer.py # Customer operations
β βββ product.py # Product operations
β βββ ... # Add more modules (sales, repairs, etc.)
β
βββ database/
β βββ **init**.py
β βββ connection.py # SQL Server connection logic
β
βββ docs/
β βββ ER_Diagram.svg # Exported ER/EER diagram
β βββ Mapping.svg # Step-by-step normalization
β βββ Project_report.pdf
β
βββ README.md # Project documentation
βββ requirements.txt # Python dependencies (optional)
- Create the database in SQL Server (e.g.,
MobileTechHubDB). - Use SQL scripts to create tables, constraints, triggers, views, etc.
pip install pyodbcIn database/connection.py, update your connection string:
conn_str = (
"Driver={ODBC Driver 17 for SQL Server};"
"Server=localhost\\SQLEXPRESS;" # or your actual SQL Server name
"Database=MobileTechHubDB;"
"Trusted_Connection=yes;"
)From the root directory:
python -m app.gui- β View and add customer records
- β View and add product records
- β Modular backend with clean database access logic
- π οΈ Extendable to sales, invoices, returns, and repairs
- π Business intelligence and data mining support (planned)
- Section 1: ER Diagram, Normalization, Relational Mapping
- Section 2: SQL Table Creation, Data Insertion
- Section 3: Triggers, Views, UDFs, Stored Procedures
- Section 4: Application functionality + Business Intelligence
- Add GUI modules for returns, repairs
- Implement search and filters
- Add exception handling and logging
This project is for academic and educational purposes.