新聞中心

中方網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運營維護。成都創(chuàng)新互聯(lián)2013年開創(chuàng)至今到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)。
Cursor常用API
1、cursor.execute(query, args=None):執(zhí)行sql語句。
參數(shù):
query (str):sql語句。
args (tuple, list or dict):sql語句中如果有變量,或者格式化輸出,會在這里填充數(shù)據(jù)。
Returns:返回一個int值,表示sql語句影響到的行數(shù)。
下面演示插入數(shù)據(jù)的四種方式:
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)建游標
# 第一種方式向表中插入數(shù)據(jù)
sql = """
INSERT INTO users (user,passwd) VALUES ('123','123')
"""
cursor.execute(sql)
# 第二種方式向表中插入數(shù)據(jù)
sql = """
INSERT INTO users (user,passwd) VALUES (%s,%s)
"""
cursor.execute(sql,['456','456'])
# 第三種方式向表中插入數(shù)據(jù)
sql = """
INSERT INTO users (user,passwd) VALUES (%s,%s)
"""
cursor.execute(sql, ('789', '789'))
# 第四種方式向表中插入數(shù)據(jù)
sql = """
INSERT INTO users (user,passwd) VALUES (%(a)s,%(b)s)
"""
cursor.execute(sql, {'a':'abc','b':'123'}) # 這里的'a'和'b'要和上面VALUES中對應
connect.commit() # 插入數(shù)據(jù)后必須更新
# 查詢數(shù)據(jù)
sql = """
select * from users
"""
cursor.execute(sql)
ret = cursor.fetchall() # 提取查詢數(shù)據(jù)
print(ret)
connect.close() # 關(guān)閉數(shù)據(jù)庫連接
2、cursor.executemany(query, args):可以執(zhí)行多條sql語句。
參數(shù):
query :sql語句
args:可迭代對象
Returns:返回sql語句影響到的行數(shù)。
相關(guān)推薦:《python視頻教程》
下面是方法實例:
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)建游標
# 插入多條數(shù)據(jù)
sql = """
INSERT INTO users (user,passwd) VALUES (%s,%s)
"""
ret_row = cursor.executemany(sql,[['a','123'],['b','234'],['c','456']]) # 在args中傳入一個可迭代對象。
connect.commit() # 插入數(shù)據(jù)后必須更新
print(f'當前受影響了{ret_row}行')
# 查詢數(shù)據(jù)
sql = """
select * from users
"""
cursor.execute(sql)
ret = cursor.fetchall() # 提取查詢數(shù)據(jù)
print(ret)
connect.close() # 關(guān)閉數(shù)據(jù)庫連接
3、cursor.fetchone():從查詢語句中獲取一條查詢結(jié)果。
4、cursor.fetchall():獲取所有查詢到的結(jié)果。
5、cursor.fetchmany(size):根據(jù)size獲取相應的行數(shù)。
6、cursor.mogrify(query, args=None):返回執(zhí)行的sql語句,下面是示例:
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)建游標 sql = """ select * from users """ cursor.execute(sql) ret_sql = cursor.mogrify(sql) # 返回執(zhí)行的sql語句 cursor.fetchmany(2) # 提取查詢數(shù)據(jù) print(ret_sql) connect.close() # 關(guān)閉數(shù)據(jù)庫連接
7、cursor.close():關(guān)閉游標,關(guān)閉游標后,游標內(nèi)所有數(shù)據(jù)將被清空。
相關(guān)推薦:
Pymysql之Connection中常用API
新聞名稱:創(chuàng)新互聯(lián)Python教程:Pymysql之Cursor常用API
文章位置:http://m.5511xx.com/article/cojsssc.html


咨詢
建站咨詢
