Mysql and Python Project
Mysql and Python Project
Mysql and Python Project
Submitted by
C.GANESH
XII-B1
AMRITA VIDYALAYAM
NALLAMPALAYAM, COIMBATORE
2023-2024
AMRITA VIDYALAYAM
NALLAMPALAYAM, COIMBATORE
CERTIFICATE
TEACHER INCHARGE
Amrita Vidyalayam,
Nallampalayam
ACKNOWLEDGEMENT
INDEX
About Python
About MYSQL
Synopsis
Project Overview/Description
System Requirements
Backend Details
Python Packages And Functions Used
Source Code
Output Screenshots
User Manual
Future Enhancements
Bibliography
Conclusion
ABOUT PYTHON
Features in Python :
2. Easy to code
3. Easy to Read
4. Object-Oriented Language
6. High-Level Language
8. Easy to Debug
Disadvantages of Python :
ABOUT MYSQL
Open source means it’s possible for anyone to use and modify the
software. Anybody can download MySQL software from the internet
and use it without paying for it. User can also change its source code to
suit your needs.
MySQL has also become the database of choice for many of the most
successful open source applications, including WordPress, Drupal,
Joomla, and Magento.
MySQL Benefits
Ease of use
Reliability
Scalability
Performance
High availability
Security
Flexibility
PROJECT SYNOPSIS
The problem definition for the project is to create a To-Do List Manager
that utilizes a MySQL database for task storage. The application allows
users to perform various operations, such as adding tasks with titles,
descriptions, and due dates, listing all tasks, setting reminders for
upcoming tasks, marking tasks as completed, and updating task titles
and due dates. The goal is to provide users with a simple and interactive
tool for managing their tasks effectively.
10
6. Task Updating: The system allows users to update task titles and due
dates, accommodating changes and modifications to task details.
11
Project Description
Project Overview:
The To-Do List Manager is a Python-based application that employs a
MySQL database for storing and managing tasks. Users can interact
with the system through an intuitive menu, performing various
operations such as adding tasks, listing existing tasks, setting reminders,
marking tasks as completed, and updating task details.
Key Features:
1. Add Tasks: Users can input task titles, descriptions, and due dates to
add new tasks to the system.
12
5. Update Task Details: The system allows users to modify task titles
and due dates, adapting to changing priorities.
Technology Stack:
- Programming Language: Python
- Database: MySQL
- Library: mysql.connector
User Interface:
The application features a user-friendly menu-driven interface, allowing
users to easily navigate and perform desired actions.
Code Structure:
The code is organized into functions, enhancing readability and
facilitating code reuse. Proper resource management ensures the closure
of database connections.
13
SYSTEM REQUIREMENTS
- RAM: 1 GB
So昀琀ware Requirements:
14
15
PACKAGE / MODULE
16
Source code
17
import mysql.connector
import datetime
# MySQL Configuration
config = {
"host": "localhost",
"user": "root",
"password": "flash",
"database": "todo_db",
# Connect to MySQL
conn = mysql.connector.connect(**config)
cursor = conn.cursor()
18
cursor.execute(sql, values)
conn.commit()
cursor.execute(sql, values)
conn.commit()
def list_tasks():
cursor.execute(sql)
tasks = cursor.fetchall()
if not tasks:
19
else:
print("\nAll Tasks:")
def set_reminder(task_id):
current_time = datetime.datetime.now()
cursor.execute(sql, (task_id,))
task = cursor.fetchone()
if task:
else:
20
def mark_task_completed(task_id):
cursor.execute(sql, (task_id,))
conn.commit()
conn.commit()
# Main Menu
21
while True:
print("6. Exit")
if choice == "1":
22
list_tasks()
set_reminder(task_id)
mark_task_completed(task_id)
23
break
# Clean up
cursor.close()
conn.close()
24
SCREENSHOTS
Main menu:
Add task:
25
List tasks:
Set reminder :
27
1. Installation:
- Ensure you have Python installed on your system.
2. Setup:
- Make sure your MySQL server is running.
- Modify the config dictionary in the code with your MySQL server
details.
4. Main Menu:
- The program will present a menu with the following options:
28
5. Adding a Task:
- Choose option 1 from the menu.
6. Listing Tasks:
- Choose option 2 from the menu.
7. Setting Reminders:
9. Updating a Task:
29
- Enter the task ID and provide the new title and due date.
11. Clean-Up:
This user manual provides a step-by-step guide for interacting with the
To-Do List Manager. Follow the instructions to efficiently manage your
tasks and stay organized.
30
Future enhancements
1. User Authentication:
4. Mobile Application:
5. Collaboration Features:
31
6. Recurring Tasks:
7. Data Analytics:
9. Notifications:
- Provide options for users to back up and restore their task data.
- Include a dark mode option for users who prefer a different visual
style.
BIBLIOGRAPHY
TEXT BOOKS
Web Sites
➢www.cbseprojectguide.com
➢www.python4csip.com
➢www.codewithfaraz.com
33
Conclusion
The ability to add, list, update, and mark tasks as completed enhances
the flexibility of the system, accommodating changes in priorities and
reflecting the user's progress. The reminder feature adds a proactive
element to task management, helping users stay on top of upcoming
deadlines.
The clean and readable code structure, along with proper resource
management, ensures the reliability and maintainability of the
application. Users can navigate the menu-driven interface with ease,
making the To-Do List Manager a practical tool for daily task
organization.
34