亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python3 操作 MySQL 插入一條數(shù)據(jù)并返回主鍵 id的實例

 更新時間:2020年03月02日 15:08:41   作者:極客點兒  
這篇文章主要介紹了Python3 操作 MySQL 插入一條數(shù)據(jù)并返回主鍵 id的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

Python 中貌似并沒有直接返回插入數(shù)據(jù) id 的操作(反正我是沒找到),但是我們可以變通一下,找到最新插入的數(shù)據(jù)

#!/usr/bin/env python3
# -*- coding: UTF-8 -*- 

import pymysql 

db = pymysql.connect(**db_conf)
cursor = db.cursor()
cursor.execute(sql)

# 最后插入行的主鍵id
print(cursor.lastrowid)

# 最新插入行的主鍵id
print(conn.insert_id())

conn.commit() 

使用 cursor.lastrowid 和 conn.insert_id() 時一定要在 conn.commit() 之前

由于數(shù)據(jù)庫的安全機制決定,其中一個進程執(zhí)行完成一條語句時,此時只有這個進程能看到數(shù)據(jù)。如果想要其他的進程也能看到數(shù)據(jù),就需要使用 conn.commit() 提交,這樣就保證了多進程同時操作數(shù)據(jù)庫而不會沖突

但是多線程并發(fā)插入的時候就不行了,因為多線程是共享數(shù)據(jù)的,而且在 Python 中并沒有所謂的真正多線程,建議使用多進程

補充拓展:mysql中插入一條數(shù)據(jù)后得到插入后的主鍵id值

 ** 當我們涉及多表進行插入操作是,常常需要在程序中等到剛剛插入數(shù)據(jù)的主鍵Id,
便與進行多表關(guān)聯(lián) **

那么便需要在*Mapper.xml的insert方法前插入以下代碼即可:

 <selectKey resultType="java.lang.Long" order="AFTER" keyProperty="id">
 SELECT LAST_INSERT_ID() AS id
 </selectKey>

以上這篇Python3 操作 MySQL 插入一條數(shù)據(jù)并返回主鍵 id的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論