> 데이터 베이스 > MySQL 튜토리얼 > MySQL과 Python을 사용하여 간단한 온라인 투자 관리 시스템을 개발하는 방법

MySQL과 Python을 사용하여 간단한 온라인 투자 관리 시스템을 개발하는 방법

WBOY
풀어 주다: 2023-09-20 12:22:43
원래의
996명이 탐색했습니다.

MySQL과 Python을 사용하여 간단한 온라인 투자 관리 시스템을 개발하는 방법

MySQL과 Python을 사용하여 간단한 온라인 투자 관리 시스템을 개발하는 방법

소개:
인터넷의 지속적인 발전으로 점점 더 많은 사람들이 다양한 투자 프로젝트에 자산을 투자하기 시작하고 있습니다. 투자자의 경우 사용하기 쉬운 온라인 투자 관리 시스템을 통해 투자를 더 잘 관리하고 추적할 수 있습니다. 이 기사에서는 MySQL과 Python을 사용하여 간단한 온라인 투자 관리 시스템을 개발하는 방법을 소개하고 구체적인 코드 예제를 제공합니다.

1. 시스템 요구사항 분석
개발을 시작하기 전에 개발할 시스템의 기능적 요구사항을 명확히 해야 합니다. 간단한 온라인 투자 관리 시스템에는 다음 기능이 포함되어야 합니다.

  1. 사용자 등록 및 로그인: 사용자는 계정을 등록하고 시스템에 로그인할 수 있어야 합니다.
  2. 프로젝트 관리: 사용자는 투자 프로젝트를 생성, 수정 및 삭제할 수 있습니다. 각 프로젝트에는 이름, 시작 날짜 및 투자 금액이 포함될 수 있습니다.
  3. 투자 기록 관리: 사용자는 투자 날짜, 투자 금액, 투자 프로젝트 등 각 투자 행위를 기록할 수 있습니다.
  4. 투자 통계 및 보고서: 사용자는 자신의 투자 통계를 보고 보고서를 생성할 수 있습니다.

2. 개발 환경 준비
개발을 시작하기 전에 개발 환경을 준비해야 합니다. 이 기사에서는 MySQL 데이터베이스와 Python 프로그래밍 언어를 사용하여 개발 환경을 구축합니다.

  1. MySQL 데이터베이스를 설치하고 새 데이터베이스를 생성하세요.
  2. Python 프로그래밍 환경을 설치하고 MySQL 연결 라이브러리(예: pymysql)를 설치하세요.

3. 데이터베이스 설계
다음으로 시스템 데이터를 저장할 데이터베이스 테이블 구조를 설계해야 합니다. 이 기사에서는 사용자 테이블, 프로젝트 테이블, 투자 기록 테이블의 세 가지 데이터 테이블을 디자인합니다.

  1. 사용자 테이블(users)에는 사용자 ID, 사용자 이름 및 비밀번호와 같은 필드가 포함됩니다.
  2. 프로젝트 테이블(projects)에는 프로젝트 ID, 프로젝트 이름, 시작 날짜, 투자 금액 등의 필드가 포함됩니다.
  3. 투자 기록 테이블(투자)에는 기록 ID, 투자 날짜, 투자 금액, 투자 프로젝트 ID, 사용자 ID 등의 필드가 포함됩니다.

4. 시스템 개발
개발에 앞서 pymysql, Flask 등 필수 라이브러리와 모듈을 가져와야 합니다.

  1. Python 파일을 만들고 필요한 라이브러리와 모듈을 가져옵니다.
  2. 데이터베이스 연결 및 커서 개체를 정의합니다.

    import pymysql
    connection = pymysql.connect(host='localhost', user='root', password='password', database='investments')
    cursor = connection.cursor()
    로그인 후 복사
  3. 사용자 등록 및 로그인 기능을 만듭니다.

    # 用户注册
    @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'))
    로그인 후 복사
  4. 프로젝트 관리 기능을 만듭니다.

    # 创建项目
    @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'))
    로그인 후 복사
  5. 투자기록 관리 기능을 만듭니다.

    # 创建投资记录
    @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'))
    로그인 후 복사
  6. 투자 통계 및 보고 기능을 생성합니다.

    # 投资统计
    @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)
    로그인 후 복사
  7. 시스템을 실행해 보세요.

    if __name__ == '__main__':
     app.secret_key = 'secret_key'
     app.run(debug=True)
    로그인 후 복사

5. 요약
이 기사에서는 MySQL과 Python을 사용하여 간단한 온라인 투자 관리 시스템을 개발하는 방법을 간략하게 소개하고 관련 코드 예제를 제공합니다. 이 시스템은 투자자가 프로젝트 관리, 투자 기록 관리, 투자 통계 및 보고서 등을 포함하여 투자를 더 잘 관리하고 추적하는 데 도움이 될 수 있습니다. 개발자는 자신의 필요에 따라 시스템을 더욱 개선하고 실제 투자 관리에 적용할 수 있습니다.

위 내용은 MySQL과 Python을 사용하여 간단한 온라인 투자 관리 시스템을 개발하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿