python往mysql数据库中写入数据和更新插入数据

python爬虫 同时被 2 个专栏收录
7 篇文章 0 订阅
5 篇文章 0 订阅

1. 连接mysql

import pymysql
db = pymysql.connect(host='localhost', user='root', password='123456', port=3306, db='spiders')
cursor = db.cursor()
sql = 'select * from students;'
cursor.execute(sql)
cursor.close()
db.close()

2. 多字段动态插入mysql数据库中

import pymysql
db = pymysql.connect(host='localhost',user='root', password='123456', port=3306, db='spiders')
data = {
    'id': '20180606',
    'name': 'Lily',
    'age': 20
}
table = 'students'
keys = ', '.join(data.keys())
values = ', '.join(['%s'] * len(data))
sql = 'INSERT INTO {table}({keys}) VALUES ({values})'.format(table=table, keys=keys, values=values)
try:
   cursor.execute(sql, tuple(data.values()))
   print('Successful')
   db.commit()
except:
   print('Failed')
   db.rollback()
cursor.close()
db.close()

3. 数据更新插入mysql数据库中

import pymysql
db = pymysql.connect(host='localhost',user='root', password='123456', port=3306, db='spiders')
data = {
    'id': '20180606',
    'name': 'Lily',
    'age': 25
}
table = 'students'
keys = ', '.join(data.keys())
values = ', '.join(['%s'] * len(data))
sql = 'INSERT INTO {table}({keys}) VALUES ({values}) ON DUPLICATE KEY UPDATE'.format(table=table, keys=keys, values=values)
update = ','.join([" {key} = %s".format(key=key) for key in data])
sql += update
try:
   cursor.execute(sql, tuple(data.values())*2)
   print('Successful')
   db.commit()
except:
   print('Failed')
   db.rollback()
cursor.close()
db.close()

  • 8
    点赞
  • 3
    评论
  • 48
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

评论 3 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:精致技术 设计师:CSDN官方博客 返回首页

打赏作者

Louis的日常

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值