MySQL是一個(gè)免費(fèi)開(kāi)源關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),是目前最流行的數(shù)據(jù)庫(kù)之一。Python是一門(mén)高級(jí)編程語(yǔ)言,它易于閱讀、易于學(xué)習(xí)、易于維護(hù),被廣泛應(yīng)用于Web開(kāi)發(fā)、人工智能、數(shù)據(jù)分析等領(lǐng)域。MySQL和Python可以相互結(jié)合,創(chuàng)建強(qiáng)大的服務(wù)器端應(yīng)用程序。
在Python中,我們可以使用第三方模塊mysqlclient或者pymysql來(lái)連接MySQL數(shù)據(jù)庫(kù),操作數(shù)據(jù)庫(kù)表格。下面是一個(gè)使用pymysql模塊連接MySQL數(shù)據(jù)庫(kù)的代碼示例:
import pymysql conn = pymysql.connect(host='localhost', user='root', password='123456', database='mydb') cursor = conn.cursor() sql = "SELECT * FROM mytable" cursor.execute(sql) result = cursor.fetchall() for row in result: print(row) conn.close()
其中,pymysql.connect()用來(lái)創(chuàng)建數(shù)據(jù)庫(kù)連接,參數(shù)包括主機(jī)名、用戶名、密碼、數(shù)據(jù)庫(kù)名等;pymysql.cursor()用來(lái)創(chuàng)建游標(biāo)對(duì)象,游標(biāo)對(duì)象用來(lái)執(zhí)行SQL查詢語(yǔ)句;execute()用來(lái)執(zhí)行SQL語(yǔ)句,fetchall()用來(lái)獲取查詢結(jié)果。
在服務(wù)器端應(yīng)用程序中,我們通常會(huì)使用Python的Web框架,如Flask、Django等來(lái)創(chuàng)建Web應(yīng)用程序。下面是一個(gè)使用Flask框架連接MySQL數(shù)據(jù)庫(kù)的代碼示例:
from flask import Flask, jsonify import pymysql app = Flask(__name__) @app.route("/") def index(): conn = pymysql.connect(host='localhost', user='root', password='123456', database='mydb') cursor = conn.cursor() sql = "SELECT * FROM mytable" cursor.execute(sql) result = cursor.fetchall() conn.close() return jsonify(result) if __name__ == '__main__': app.run()
這個(gè)Web應(yīng)用程序使用Flask框架創(chuàng)建,路由"/"返回從MySQL數(shù)據(jù)庫(kù)中獲取的數(shù)據(jù)。同樣地,我們先使用pymysql.connect()創(chuàng)建MySQL數(shù)據(jù)庫(kù)連接,執(zhí)行SQL查詢語(yǔ)句,獲取結(jié)果,并將結(jié)果以JSON格式返回到前端。
總之,使用MySQL和Python搭建服務(wù)器端應(yīng)用程序是相當(dāng)方便的。通過(guò)訪問(wèn)數(shù)據(jù)庫(kù)、處理數(shù)據(jù)、生成結(jié)果并最終返回結(jié)果,我們可以創(chuàng)建出強(qiáng)大的Web應(yīng)用程序?qū)崿F(xiàn)各種需求。