Python開發【筆記】:pymsyql 插入一條數據同時獲取新插數據的自增id的兩種方式


一、通過cursor.lastrowid

import pymysql.cursors

# Connect to the database

connection = pymysql.connect(host='192.168.90.10',
                             port=3306,
                             user='remote',
                             password='123456',
                             db='Jefrey',
                             charset='utf8mb4',
                             cursorclass=pymysql.cursors.DictCursor,
                             autocommit = True)

try:

    with connection.cursor() as cursor:  # 增加
        sql = "INSERT INTO `users` (`email`, `password`) VALUES (%s, %s)"
        cursor.execute(sql, ('webmaster@python.org', 'very-secret'))
        print(cursor.lastrowid)
finally:
    connection.close()

# 87

 

二、通過sql語句SELECT LAST_INSERT_ID()

import pymysql.cursors

# Connect to the database

connection = pymysql.connect(host='192.168.90.10',
                             port=3306,
                             user='remote',
                             password='123456',
                             db='Jefrey',
                             charset='utf8mb4',
                             cursorclass=pymysql.cursors.DictCursor,
                             autocommit = True)

try:

    with connection.cursor() as cursor:  # 增加
        sql = "INSERT INTO `users` (`email`, `password`) VALUES (%s, %s)"
        cursor.execute(sql, ('webmaster@python.org', 'very-secret'))
        sql = 'SELECT LAST_INSERT_ID() AS id;'
        cursor.execute(sql)
        database = cursor.fetchone()
        print(database)
finally:
    connection.close()

# {'id': 88}

 

表結構:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM