用到的mysql语句主要为:
author_id = cursor.lastrowid
相等于 : author_id = conn.insert_id()
有这么一段需求,插入数据后,获取返回的主键id,首次可以获取到,第二次插入失败,就获取不到主键id了。其实我们可以这样实现:
(一)需求:
例子:
我们将name , plat(平台)为唯一主键,
因为name 在不同platform上可能相同,所以对于不同platform的name,我们都要将name存进去,是同一platform的name 就不再进行第二次存入
(二)Python代码实现:
# 1 先进行查询是否存在
# 2 再进行更新操作(其实这一步可以不用的)
# 3 对数据进行插入
author_id = None
## (一)insert into mysql
try:
# 查重处理
self.cursor.execute("""select author_id from tb_author where name = %s and platform = %s """,
[item['name'], item['platform']])
# 是否有重复数据
repetition = self.cursor.fetchone()
# 重复
if repetition:
if len(repetition) >