flask+pymysql實現(xiàn)Web端操作數(shù)據(jù)庫的項目實踐
Flask是一個使用 Python 編寫的輕量級 Web 應(yīng)用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎則使用 Jinja2 。Flask使用 BSD 授權(quán)。Flask也被稱為 “microframework” ,因為它使用簡單的核心,用 extension 增加其他功能。Flask沒有默認(rèn)使用的數(shù)據(jù)庫、窗體驗證工具。
PyMySQL 是在 Python3.x 版本中用于連接 MySQL 服務(wù)器的一個庫,Python2 中則使用 mysqldb。
PyMySQL 遵循 Python 數(shù)據(jù)庫 API v2.0 規(guī)范,并包含了 pure-Python MySQL 客戶端庫。
一.環(huán)境配置
flask庫和pymysql庫使用pip接口進(jìn)行安裝:
pip install flaskpip install pymysql
pip接口詳細(xì)說明可以看:http://www.fzitv.net/article/257081.htm
二.實際應(yīng)用
1.首先先實現(xiàn)mysql的主程序,新建xxx.py文件:
import pymysql
class Mysql(object):
def __init__(self):
try:
self.db = pymysql.connect(host="localhost",user="root",password="密碼",database="數(shù)據(jù)庫名稱")
#游標(biāo)對象
self.cursor = self.db.cursor()
print("連接成功!")
except:
print("連接失敗!")
# 查詢數(shù)據(jù)函數(shù)
def getdata(self):
sql = "select * from 表名"
#執(zhí)行sql語句
self.cursor.execute(sql)
#獲取所有的記錄
results = self.cursor.fetchall()
return results
#關(guān)閉
def __del__(self):
self.db.close()2.然后新建另一個xxx.py文件,運(yùn)行flask框架,調(diào)用編好的html,實現(xiàn)web端輸出數(shù)據(jù)庫表內(nèi)容。
flask文件
from flask import Flask,render_template,request
app = Flask(__name__)
@app.route("/select",methods=['GET','POST'])
def select():
#調(diào)用
db = Mysql()
results = db.getdata()
return render_template("select.html",results=results)
if __name__ == "__main__":
app.run(app.run(debug=True,port=5000,host='127.0.0.1'))html文件
<body>
<div>
<h4>查詢數(shù)據(jù)</h4>
<table border="1" width="30%" weight="30%">
<thead>
<tr>
<th>id</th>
<th>worknumber</th>
<th>name</th>
<th>gender</th>
<th>age</th>
<th>idcard</th>
<th>entrydate</th>
</tr>
</thead>
<tbody>
{% for result in results %}
<tr>
<td>{{ result[0]}}</td>
<td>{{ result[1]}}</td>
<td>{{ result[2]}}</td>
<td>{{ result[3]}}</td>
<td>{{ result[4]}}</td>
<td>{{ result[5]}}</td>
<td>{{ result[6]}}</td>
<td><a href="/delete?id={{ result[0] }}" rel="external nofollow" ><button>刪除</button></a></td>
<td><a href="/submit_insert" rel="external nofollow" ><button>插入</button></a></td>
<td><a href="/submit_update" rel="external nofollow" ><button>修改</button></a></td>
</tr>
{% endfor %}
</tbody>
</table>
</div>3.運(yùn)行flask文件,網(wǎng)頁輸入http://127.0.0.1:5000/select
輸出:

三.總結(jié)
刪除、插入、修改等操作同查詢一樣,這邊就不放代碼了!
到此這篇關(guān)于flask+pymysql實現(xiàn)Web端操作數(shù)據(jù)庫的項目實踐的文章就介紹到這了,更多相關(guān)flask pymysql操作數(shù)據(jù)庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python讀取Nacos配置時設(shè)置命名空間的方法步驟
這篇文章主要介紹了Nacos配置管理的命名空間原理、Python端配置步驟、最佳實踐以及常見問題解決方案,強(qiáng)調(diào)通過合理命名空間與動態(tài)配置機(jī)制,實現(xiàn)多環(huán)境隔離和高效運(yùn)維管理,需要的朋友可以參考下2025-10-10
Python?運(yùn)算符Inplace?與Standard?
這篇文章主要介紹了Python?運(yùn)算符Inplace?與Standard,nplace運(yùn)算符的行為類似于普通運(yùn)算符,只是它們在可變和不可變目標(biāo)的情況下以不同的方式運(yùn)行2022-09-09
詳解Python網(wǎng)絡(luò)爬蟲功能的基本寫法
這篇文章主要介紹了Python網(wǎng)絡(luò)爬蟲功能的基本寫法,網(wǎng)絡(luò)爬蟲,即Web Spider,是一個很形象的名字。把互聯(lián)網(wǎng)比喻成一個蜘蛛網(wǎng),那么Spider就是在網(wǎng)上爬來爬去的蜘蛛,對網(wǎng)絡(luò)爬蟲感興趣的朋友可以參考本文2016-01-01
Python數(shù)據(jù)可視化中的時間序列圖表功能(實例展示其強(qiáng)大功能)
時間序列圖表在多個領(lǐng)域中都有廣泛的應(yīng)用,通過Python中的各種繪圖庫和數(shù)據(jù)分析工具,我們可以方便地對時間序列數(shù)據(jù)進(jìn)行可視化和分析,本文提供的示例代碼和方法能夠為您的時間序列數(shù)據(jù)分析工作提供有益的參考,感興趣的朋友跟隨小編一起看看吧2024-07-07
Celery批量異步調(diào)用任務(wù)一直等待結(jié)果問題
這篇文章主要介紹了Celery批量異步調(diào)用任務(wù)一直等待結(jié)果問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-11-11

