溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Pymysql中的Connection有哪些API

發(fā)布時間:2020-09-25 09:02:42 來源:億速云 閱讀:295 作者:Leah 欄目:編程語言

這篇文章將為大家詳細講解有關(guān)Pymysql中的Connection有哪些API,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

Connection中常用API

1、open() :檢測數(shù)據(jù)庫是否連接。

connect.open:如果數(shù)據(jù)庫連接返回Trhe,否則返回False。

2、ping(reconnect=True)

connect.ping(reconnect=True):如果reconnect=True表示連接斷開后,重新進行連接。

import pymysql.cursors
# 連接數(shù)據(jù)庫
connect = pymysql.connect(
    host='127.0.0.1',
    user='root',
    password='123',
    db='demo_temp',
    charset='utf8',
    cursorclass=pymysql.cursors.DictCursor
)
print(connect.open)  # 打印數(shù)據(jù)庫連接狀態(tài)
connect.close()  # 關(guān)閉數(shù)據(jù)庫連接
connect.ping(reconnect=True)  # 重新連接數(shù)據(jù)庫
print(connect.open)   # 打印數(shù)據(jù)庫連接狀態(tài)

下面的小動畫向我們展示了當(dāng)connect斷開連接后,使用connect.ping(reconnect=True)又重新連接到了數(shù)據(jù)庫。

Pymysql中的Connection有哪些API

3、rollback():回滾當(dāng)前事務(wù),用法在上面,這里就不再演示了。

4、select_db(db):切換數(shù)據(jù)庫。

# demo_test數(shù)據(jù)庫中users表數(shù)據(jù)
mysql> select * from users;
+----+-----------+--------+
| id | user      | passwd    |
+----+-----------+--------+
|  1 | 小明      | 123    |
|  2 | 小剛      | 123    |
|  3 | 小紅      | 123    |
|  4 | 葫蘆娃    | 123     |
|  5 | 小明      | 123    |
+----+-----------+--------+
# demo_temp2庫中test表中數(shù)據(jù)
mysql> select * from test;
+------+------+----------+
| id   | user | password      |
+------+------+----------+
|    1 | abc  | 123       |
+------+------+----------+
import pymysql.cursors
# 連接數(shù)據(jù)庫
connect = pymysql.connect(
    host='127.0.0.1',
    user='root',
    password='123',
    db='demo_temp',
    charset='utf8',
    cursorclass=pymysql.cursors.DictCursor
)
with connect.cursor() as cursor:   # 創(chuàng)建游標(biāo)
    # 查詢demo_temp中users表的數(shù)據(jù)
    sql = """
        select * from users
        """
    cursor.execute(sql)
    ret = cursor.fetchall()  # 提取查詢數(shù)據(jù)
    print(ret)
    print('-'*80)
    # 切換到demo_temp2數(shù)據(jù)庫,查詢test表的數(shù)據(jù)
    connect.select_db('demo_temp2')
    sql = """
           select * from test
           """
    cursor.execute(sql)
    ret = cursor.fetchall()  # 提取查詢數(shù)據(jù)
    print(ret)
connect.close()   # 關(guān)閉數(shù)據(jù)庫連接

打印結(jié)果

[{'id': 1, 'user': '小明', 'passwd': '123'}, {'id': 2, 'user': '小剛', 'passwd': '123'}, {'id': 3, 'user': '小紅',
'passwd': '123'}, 
{'id': 4, 'user': '葫蘆娃', 'passwd': '123'}, {'id': 5, 'user': '小明', 'passwd': '123'}]
--------------------------------------------------------------------------------
[{'id': 1, 'user': 'abc', 'password': '123'}]

5、cursor():創(chuàng)建游標(biāo)對象,用于操作數(shù)據(jù)(增、刪、改、查)。

6、commit():提交請求,當(dāng)向數(shù)據(jù)庫中插入數(shù)據(jù)時,需要使用commit()進行提交,否則數(shù)據(jù)將不能寫入數(shù)據(jù)庫。

7、close():關(guān)閉數(shù)據(jù)庫連接。

關(guān)于Pymysql中的Connection有哪些API就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI