Home Database Mysql Tutorial How to develop a simple online investment management system using MySQL and Python

How to develop a simple online investment management system using MySQL and Python

Sep 20, 2023 pm 12:22 PM
mysql python Online investment management system

How to develop a simple online investment management system using MySQL and Python

How to use MySQL and Python to develop a simple online investment management system

Introduction:
With the continuous development of the Internet, more and more people are starting to Invest assets in various investments. For investors, an easy-to-use online investment management system can help them better manage and track their investments. This article will introduce how to use MySQL and Python to develop a simple online investment management system, and provide specific code examples.

1. System requirements analysis
Before starting development, we need to clarify the functional requirements of the system to be developed. A simple online investment management system should include the following functions:

  1. User registration and login: Users need to be able to register an account and log in to the system.
  2. Project management: Users can create, modify and delete investment projects. Each project can include a name, start date and investment amount.
  3. Investment record management: Users can record each investment behavior, including investment date, investment amount and invested projects.
  4. Investment statistics and reports: Users can view their own investment statistics and generate reports.

2. Development environment preparation
Before starting development, we need to prepare the development environment. This article will use the MySQL database and Python programming language to build a development environment.

  1. Install MySQL database and create a new database.
  2. Install the Python programming environment and install the MySQL connection library (such as pymysql).

3. Database design
Next, we need to design the database table structure to store the system data. This article will design three data tables: user table, project table and investment record table.

  1. The user table (users) includes fields such as user ID, user name and password.
  2. The project table (projects) includes fields such as project ID, project name, start date, and investment amount.
  3. The investment record table (investments) includes fields such as record ID, investment date, investment amount, invested project ID and user ID.

4. System Development
Before development, we need to import the required libraries and modules, such as pymysql, flask, etc.

  1. Create a Python file and import the required libraries and modules.
  2. Define database connection and cursor objects.

    import pymysql
    connection = pymysql.connect(host='localhost', user='root', password='password', database='investments')
    cursor = connection.cursor()
    Copy after login
  3. Create user registration and login functions.

    # 用户注册
    @app.route('/register', methods=['POST'])
    def register():
     username = request.form['username']
     password = request.form['password']
     cursor.execute("INSERT INTO users (username, password) VALUES (%s, %s)", (username, password))
     connection.commit()
     return redirect(url_for('login'))
    
    # 用户登录
    @app.route('/login', methods=['POST'])
    def login():
     username = request.form['username']
     password = request.form['password']
     cursor.execute("SELECT * FROM users WHERE username = %s AND password = %s", (username, password))
     if cursor.fetchone() is not None:
         session['username'] = username
         return redirect(url_for('home'))
     else:
         return redirect(url_for('login'))
    Copy after login
  4. Create project management functionality.

    # 创建项目
    @app.route('/create-project', methods=['POST'])
    def create_project():
     name = request.form['name']
     start_date = request.form['start_date']
     investment_amount = request.form['investment_amount']
     cursor.execute("INSERT INTO projects (name, start_date, investment_amount) VALUES (%s, %s, %s)", (name, start_date, investment_amount))
     connection.commit()
     return redirect(url_for('projects'))
    
    # 修改项目
    @app.route('/edit-project/<int:project_id>', methods=['POST'])
    def edit_project(project_id):
     name = request.form['name']
     start_date = request.form['start_date']
     investment_amount = request.form['investment_amount']
     cursor.execute("UPDATE projects SET name = %s, start_date = %s, investment_amount = %s WHERE id = %s", (name, start_date, investment_amount, project_id))
     connection.commit()
     return redirect(url_for('projects'))
    
    # 删除项目
    @app.route('/delete-project/<int:project_id>', methods=['POST'])
    def delete_project(project_id):
     cursor.execute("DELETE FROM projects WHERE id = %s", (project_id,))
     connection.commit()
     return redirect(url_for('projects'))
    Copy after login
  5. Create investment record management functions.

    # 创建投资记录
    @app.route('/create-investment', methods=['POST'])
    def create_investment():
     date = request.form['date']
     amount = request.form['amount']
     project_id = request.form['project_id']
     cursor.execute("INSERT INTO investments (date, amount, project_id, user_id) VALUES (%s, %s, %s, %s)", (date, amount, project_id, session['username']))
     connection.commit()
     return redirect(url_for('investments'))
    
    # 修改投资记录
    @app.route('/edit-investment/<int:investment_id>', methods=['POST'])
    def edit_investment(investment_id):
     date = request.form['date']
     amount = request.form['amount']
     project_id = request.form['project_id']
     cursor.execute("UPDATE investments SET date = %s, amount = %s, project_id = %s WHERE id = %s", (date, amount, project_id, investment_id))
     connection.commit()
     return redirect(url_for('investments'))
    
    # 删除投资记录
    @app.route('/delete-investment/<int:investment_id>', methods=['POST'])
    def delete_investment(investment_id):
     cursor.execute("DELETE FROM investments WHERE id = %s", (investment_id,))
     connection.commit()
     return redirect(url_for('investments'))
    Copy after login
  6. Create investment statistics and reporting functions.

    # 投资统计
    @app.route('/investment-stats')
    def investment_stats():
     cursor.execute("SELECT SUM(amount) FROM investments WHERE user_id = %s", (session['username'],))
     total_investment = cursor.fetchone()[0]
     return render_template('investment_stats.html', total_investment=total_investment)
    
    # 生成报表
    @app.route('/generate-report')
    def generate_report():
     cursor.execute("SELECT * FROM investments WHERE user_id = %s", (session['username'],))
     investments = cursor.fetchall()
     return render_template('report.html', investments=investments)
    Copy after login
  7. Run the system.

    if __name__ == '__main__':
     app.secret_key = 'secret_key'
     app.run(debug=True)
    Copy after login

5. Summary
This article briefly introduces how to use MySQL and Python to develop a simple online investment management system, and provides relevant code examples. This system can help investors better manage and track their investments, including project management, investment record management, investment statistics and reports, etc. Developers can further improve the system according to their own needs and apply it to actual investment management.

The above is the detailed content of How to develop a simple online investment management system using MySQL and Python. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP and Python: Different Paradigms Explained PHP and Python: Different Paradigms Explained Apr 18, 2025 am 12:26 AM

PHP is mainly procedural programming, but also supports object-oriented programming (OOP); Python supports a variety of paradigms, including OOP, functional and procedural programming. PHP is suitable for web development, and Python is suitable for a variety of applications such as data analysis and machine learning.

Choosing Between PHP and Python: A Guide Choosing Between PHP and Python: A Guide Apr 18, 2025 am 12:24 AM

PHP is suitable for web development and rapid prototyping, and Python is suitable for data science and machine learning. 1.PHP is used for dynamic web development, with simple syntax and suitable for rapid development. 2. Python has concise syntax, is suitable for multiple fields, and has a strong library ecosystem.

MySQL's Role: Databases in Web Applications MySQL's Role: Databases in Web Applications Apr 17, 2025 am 12:23 AM

The main role of MySQL in web applications is to store and manage data. 1.MySQL efficiently processes user information, product catalogs, transaction records and other data. 2. Through SQL query, developers can extract information from the database to generate dynamic content. 3.MySQL works based on the client-server model to ensure acceptable query speed.

Laravel Introduction Example Laravel Introduction Example Apr 18, 2025 pm 12:45 PM

Laravel is a PHP framework for easy building of web applications. It provides a range of powerful features including: Installation: Install the Laravel CLI globally with Composer and create applications in the project directory. Routing: Define the relationship between the URL and the handler in routes/web.php. View: Create a view in resources/views to render the application's interface. Database Integration: Provides out-of-the-box integration with databases such as MySQL and uses migration to create and modify tables. Model and Controller: The model represents the database entity and the controller processes HTTP requests.

PHP and Python: A Deep Dive into Their History PHP and Python: A Deep Dive into Their History Apr 18, 2025 am 12:25 AM

PHP originated in 1994 and was developed by RasmusLerdorf. It was originally used to track website visitors and gradually evolved into a server-side scripting language and was widely used in web development. Python was developed by Guidovan Rossum in the late 1980s and was first released in 1991. It emphasizes code readability and simplicity, and is suitable for scientific computing, data analysis and other fields.

Solve database connection problem: a practical case of using minii/db library Solve database connection problem: a practical case of using minii/db library Apr 18, 2025 am 07:09 AM

I encountered a tricky problem when developing a small application: the need to quickly integrate a lightweight database operation library. After trying multiple libraries, I found that they either have too much functionality or are not very compatible. Eventually, I found minii/db, a simplified version based on Yii2 that solved my problem perfectly.

Laravel framework installation method Laravel framework installation method Apr 18, 2025 pm 12:54 PM

Article summary: This article provides detailed step-by-step instructions to guide readers on how to easily install the Laravel framework. Laravel is a powerful PHP framework that speeds up the development process of web applications. This tutorial covers the installation process from system requirements to configuring databases and setting up routing. By following these steps, readers can quickly and efficiently lay a solid foundation for their Laravel project.

MySQL vs. Other Programming Languages: A Comparison MySQL vs. Other Programming Languages: A Comparison Apr 19, 2025 am 12:22 AM

Compared with other programming languages, MySQL is mainly used to store and manage data, while other languages ​​such as Python, Java, and C are used for logical processing and application development. MySQL is known for its high performance, scalability and cross-platform support, suitable for data management needs, while other languages ​​have advantages in their respective fields such as data analytics, enterprise applications, and system programming.

See all articles