使用pymysql将数据库的数据按行读取并显示在网页
时间: 2024-04-16 12:26:46 浏览: 17
要将数据库的数据按行读取并显示在网页上,您可以使用Python的Flask框架和pymysql模块来实现。以下是一个简单的示例代码:
```python
from flask import Flask, render_template
import pymysql
app = Flask(__name__)
@app.route('/')
def display_data():
# 连接到数据库
conn = pymysql.connect(host='localhost', user='user', password='password', database='database_name')
cursor = conn.cursor()
# 执行查询语句
cursor.execute('SELECT * FROM table_name')
# 读取所有行数据
rows = cursor.fetchall()
# 关闭数据库连接
conn.close()
# 渲染模板并传递数据给网页
return render_template('index.html', rows=rows)
if __name__ == '__main__':
app.run()
```
在上述示例代码中,我们使用Flask框架创建了一个简单的Web应用。当用户访问根路由'/'时,会触发`display_data()`函数。在这个函数中,我们首先连接到数据库,并执行查询语句来获取所有行数据。然后,关闭数据库连接。最后,使用`render_template()`方法渲染名为'index.html'的模板,并将数据`rows`传递给网页。
在`index.html`模板中,您可以使用模板引擎来遍历并显示数据库中的行数据。以下是一个简单的示例:
```html
<!DOCTYPE html>
<html>
<head>
<title>Database Data</title>
</head>
<body>
<h1>Database Data</h1>
<table>
<tr>
<th>Column 1</th>
<th>Column 2</th>
<!-- 添加更多列... -->
</tr>
{% for row in rows %}
<tr>
<td>{{ row[0] }}</td>
<td>{{ row[1] }}</td>
<!-- 添加更多列... -->
</tr>
{% endfor %}
</table>
</body>
</html>
```
在上述示例中,我们通过使用`{% for %}`和`{{ }}`来在网页中生成表格,并显示数据库中的行数据。您可以根据实际情况修改表格的标题和列数,以及显示的数据。
请确保已经安装了Flask和pymysql模块,可以使用`pip install flask pymysql`命令进行安装。运行代码后,访问http://localhost:5000/即可在网页上显示数据库的数据。