首页 > 解决方案 > 识别mysql数据库中新增记录和修改记录

问题描述

我有一个看起来像这样的数据库,现在我确实想根据 html 页面上的数据输入显示新添加的记录或修改的记录。现在该表是一个长表,可以将更多变量添加到一个记录 id 中,并且可以添加具有相同变量名称但不同值的新记录 id。我确实想根据值在 html 上显示新记录 ID 和修改记录


import pandas as pd
df = pd.DataFrame([('4010000','age', 38),
                   ('4010000','t_seen', "10:00am"),
                   ('4010001','birth_w', 40),
                   ('4010001','birth_unit', "kg"),
                   ('4010002','baby_seen', 56),
                  ('4010002','admiss', 456)],
                  columns=('Record_id','variable', 'value'))
df

任何人都知道我如何在 python 中做到这一点,这是我如何使用烧瓶从数据库中提取这些数据

from flask import Flask, request, render_template
import pymysql
import pandas as pd
from pandas import DataFrame


app = Flask(__name__)


host   = 'localhost'
port   = port name
user   = ''
passwd = ''
db     = 'red_data'

@app.route('/tables')
def someName():
        cnx    = pymysql.connect(host=host, port=port, user=user, passwd=passwd, db=db)
        cur    = cnx.cursor()
        query  = "SELECT * FROM red_data"
        cur.execute(query)
        field_names = [i[0] for i in cur.description]
        get_data = [xx for xx in cur]
        cur.close()
        cnx.close()
        df = DataFrame(get_data)
        df.columns = field_names
        results = df
        return render_template('index.html', results=[results.to_html(classes='results')],
        titles = ['na', 'database table'])

if __name__ == '__main__':
    app.run(debug=True, port=8585)

这是我的html输出

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <link rel=stylesheet type=text/css href="{{ url_for('static', filename='style.css') }}">
</head>
<body>
<div>

    <div class=page>
        <h1>Surfer groups</h1>
        {% for table in results %}
        <h2>{{titles[loop.index]}}</h2>
        {{ table|safe }}
        {% endfor %}

    </div>
</div>
</body>
</html>

我想在浏览器上显示新的和修改的记录

标签: pythonhtmlmysqlpandasflask

解决方案


推荐阅读