日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

python mysqldb安装_Flask干货:访问数据库——Python数据库框架MySQLPython

發布時間:2024/4/19 数据库 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python mysqldb安装_Flask干货:访问数据库——Python数据库框架MySQLPython 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

圖 | 源網絡文 | 5號程序員

上一次我們學會了數據庫安裝,但只是安裝好沒教大家怎么使用!

嘿,別擔心,這不有我呢嘛。

今天就由我給大家介紹介紹框架MySQL-Python

01

MySQL-Python安裝

框架也是庫,所以跟其他庫安裝一樣,在虛擬環境下輸入

pip install pymysql

進行安裝,如果安裝不成功,試試鏡像安裝:

pip install –i https://pypi.tuna.tsinghua.edu.cn/simplepymysql

安裝好以后就能通過python操作數據庫了。

02

通過Python操作數據庫對象

1、創建MySQL連接對象

開啟MySQL自帶命令行,輸入命令create database wuhao; 創建名為“wuhao”的數據庫,并用命令?show databases; 查看。

創建數據庫成功后,我們相當于擁有一個倉庫啦,但里面還啥都沒有,沒有分區、沒有貨物、沒有標號… …啥都沒有,所以還要建立一張表,相當于在倉庫分個區。

先用命令 use wuhao; 切換到數據庫下,表示你已經進入到倉庫里面了;再用命令 create table user(username varchar(30), email varchar(50)); 創建名為“user”的表格和username、email字段,表示你在倉庫中劃分出一個區域,同時在區域內又分成多個小格用來存放指定貨物。

萬事俱備,可以往倉庫搬貨嘍!

使用命令 insert into user values (‘No5Programmer’, ‘123456789@qq.com’); 添加測試數據,并用命令select * from user; 查看,結果如圖:

然后新建app.py文件,內容如下:

from flask import Flaskimport pymysqlpymysql.install_as_MySQLdb()app = Flask(__name__)conn = pymysql.Connect( host = '127.0.0.1', port = 3306, user = 'root', passwd = 'root', db = 'wuhao', charset = 'utf8')

使用import導入pymysql,然后建立數據庫連接對象conn。參數說明如下:

  • user:登錄數據庫的用戶名,該參數不能為空

  • passwd:錄數據庫的密碼,該參數可以為空

  • db:連接的數據庫的名稱,該參數不能為空

  • charset:字符集編碼,注意不加“-”,該參數不能為空

Python建立與數據的連接,事實上是建立一個MySQLdb.connect()的連接對象,通過連接對象就能和數據庫進行數據交互。常用的方法有下面4種:

  • cursor():創建游標對象并返回

  • commit():提交當前事務操作,對數據庫的增、刪、改、查先保存到緩存里,當執行此方法時再提交給數據庫

  • rollback():回滾當前事務操作,取消前面操作

  • close():關閉數據庫連接

2、獲取游標對象

建立連接后,操作數據庫就需要讓Python對數據庫執行SQL語句。

想象一下,現在是程序自己在用鼠標點擊目標文件,所以首要任務是先找到游標,獲得游標對象。

cursor = conn.cursor()sql = "select * from user"cursor.execute(sql)

上面的第一行代碼就獲取了游標,然后用execute()操作。

3、獲取所有記錄列表

在上面代碼的基礎上繼續編寫:

results = cursor.fetchall()for row in results: username = row[0] email = row[1] print("emial=%s, username=%s" % (email, username))cursor.close()conn.close()

可以看出,程序在遍歷user表格中的數據并進行打印。除了代碼中用到的方法,cursor對象還支持下列方法:

  • execute():用于執行一個數據庫的查詢命令

  • fetchone():獲取結果集中的下一行

  • fetchmany(size):獲取結果集中的下(size)行

  • fetchall():獲取結果集中剩下的所有行

  • rowcount():最近一次執行數據庫查詢命令后,返回數據的行數

  • close():關閉游標

03

實戰

完整的app.py代碼如下:

from flask import Flaskimport pymysqlpymysql.install_as_MySQLdb()app = Flask(__name__)conn = pymysql.Connect( host = '127.0.0.1', port = 3306, user = 'root', passwd = 'root', db = 'wuhao', charset = 'utf8')cursor = conn.cursor()sql = "select * from user"cursor.execute(sql)results = cursor.fetchall()for row in results: username = row[0] email = row[1] print("emial=%s, username=%s" % (email, username))cursor.close()conn.close()@app.route('/')def index(): return 'Hello World!'if __name__ == '__main__': app.run()

運行后可以看到如下結果:

成功!因為用的print(),所以是在命令行打印。

04

這次的內容主要是學習如何連接數據庫,關鍵點在于獲取游標對象,有游標才能控制,就像我們自己在操作一樣。

下一次將說說如何更新數據,對數據庫進行增、刪、改、查

你確定不關注我一波?

- END -

總結

以上是生活随笔為你收集整理的python mysqldb安装_Flask干货:访问数据库——Python数据库框架MySQLPython的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。