您好,登錄后才能下訂單哦!
Pymysql的Cursor有哪些API?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
Cursor常用API
1、cursor.execute(query, args=None):執行sql語句。
參數:
query (str):sql語句。
args (tuple, list or dict):sql語句中如果有變量,或者格式化輸出,會在這里填充數據。
Returns:返回一個int值,表示sql語句影響到的行數。
下面演示插入數據的四種方式:
import pymysql.cursors # 連接數據庫 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: # 創建游標 # 第一種方式向表中插入數據 sql = """ INSERT INTO users (user,passwd) VALUES ('123','123') """ cursor.execute(sql) # 第二種方式向表中插入數據 sql = """ INSERT INTO users (user,passwd) VALUES (%s,%s) """ cursor.execute(sql,['456','456']) # 第三種方式向表中插入數據 sql = """ INSERT INTO users (user,passwd) VALUES (%s,%s) """ cursor.execute(sql, ('789', '789')) # 第四種方式向表中插入數據 sql = """ INSERT INTO users (user,passwd) VALUES (%(a)s,%(b)s) """ cursor.execute(sql, {'a':'abc','b':'123'}) # 這里的'a'和'b'要和上面VALUES中對應 connect.commit() # 插入數據后必須更新 # 查詢數據 sql = """ select * from users """ cursor.execute(sql) ret = cursor.fetchall() # 提取查詢數據 print(ret) connect.close() # 關閉數據庫連接
2、cursor.executemany(query, args):可以執行多條sql語句。
參數:
query :sql語句
args:可迭代對象
Returns:返回sql語句影響到的行數。
下面是方法實例:
import pymysql.cursors # 連接數據庫 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: # 創建游標 # 插入多條數據 sql = """ INSERT INTO users (user,passwd) VALUES (%s,%s) """ ret_row = cursor.executemany(sql,[['a','123'],['b','234'],['c','456']]) # 在args中傳入一個可迭代對象。 connect.commit() # 插入數據后必須更新 print(f'當前受影響了{ret_row}行') # 查詢數據 sql = """ select * from users """ cursor.execute(sql) ret = cursor.fetchall() # 提取查詢數據 print(ret) connect.close() # 關閉數據庫連接
3、cursor.fetchone():從查詢語句中獲取一條查詢結果。
4、cursor.fetchall():獲取所有查詢到的結果。
5、cursor.fetchmany(size):根據size獲取相應的行數。
6、cursor.mogrify(query, args=None):返回執行的sql語句,下面是示例:
import pymysql.cursors # 連接數據庫 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: # 創建游標 sql = """ select * from users """ cursor.execute(sql) ret_sql = cursor.mogrify(sql) # 返回執行的sql語句 cursor.fetchmany(2) # 提取查詢數據 print(ret_sql) connect.close() # 關閉數據庫連接
7、cursor.close():關閉游標,關閉游標后,游標內所有數據將被清空。
關于Pymysql的Cursor有哪些API問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。