cursor生成后端代码
时间: 2025-02-06 22:20:32 浏览: 69
使用游标实现分页功能的后端代码示例
Python Flask 和 MySQL 实现游标分页
为了实现高效的分页查询,可以采用基于游标的分页方式。这种方式不仅提高了性能,还减少了不必要的数据传输。
import pymysql
from flask import Flask, request, jsonify
app = Flask(__name__)
def get_db_connection():
connection = pymysql.connect(
host='localhost',
user='root',
password='password',
database='testdb'
)
return connection
@app.route('/items')
def items():
cursor_id = request.args.get('cursor', None)
limit = int(request.args.get('limit', 10))
with get_db_connection() as conn:
cur = conn.cursor(pymysql.cursors.DictCursor)
if not cursor_id:
query = "SELECT id, name FROM items ORDER BY id LIMIT %s"
cur.execute(query, (limit,))
else:
query = """
SELECT id, name
FROM items
WHERE id > %s
ORDER BY id
LIMIT %s
"""
cur.execute(query, (int(cursor_id), limit))
results = cur.fetchall()
last_item = results[-1] if results else None
response = {
'data': results,
'next_cursor': str(last_item['id']) if last_item else ''
}
return jsonify(response)
if __name__ == '__main__':
app.run(debug=True)
此代码展示了如何通过 Flask
框架创建 RESTful API 来处理带有游标的分页请求[^2]。当客户端发送 GET 请求至 /items?cursor=<last_seen_id>&limit=10
路径时,服务器会根据给定的游标 ID 返回下一批次的数据项,并提供一个新的游标供后续调用使用。
对于首次访问,则无需传递游标参数;默认情况下将返回前几条记录作为起始页面的内容[^3]。
相关推荐


















