Python 向MySQL写入数据

本文详细介绍了使用Python向MySQL数据库写入数据的具体方法,重点强调了无论数据类型如何,在SQL语句中统一使用%s作为占位符的重要性。通过示例代码展示了如何连接数据库并执行插入操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python向MySQL中写入数据的方法和MySQL非常类似,这里主要想说明一个小点,无论输入的数据类型如何,语句中的占位符均使用%s。这是因为Python写入数据到MySQL的语句为字符串,这样把生成的命令直接传递给MySQL就可以了。(下面代码运行的前提条件是数据库中已经存在对应的数据表!!!)

import pymysql
import logging
import pandas as pd

db_name = 'name'
db_user = 'user'
db_pass = 'psaa'
db_ip = 'ip'
db_port = 3306


#写入数据到数据库中
def writeDb(sql,db_data=()):
    """
    连接mysql数据库(写),并进行写的操作
    """
    try:
        conn = pymysql.connect(db=db_name,user=db_user,passwd=db_pass,host=db_ip,port=int(db_port),charset="utf8")
        cursor = conn.cursor()
    except Exception as e:
        print(e)
        logging.error('数据库连接失败:%s' % e)
        return False

    try:
        cursor.execute(sql, db_data)
        conn.commit()
    except Exception as e:
        conn.rollback()
        logging.error('数据写入失败:%s' % e)
        return False
    finally:
        cursor.close()
        conn.close()
    return True



sql = """ INSERT INTO user(height,weight,sex) VALUES(%s,%s,%s) """
data = (height, weight, sex)
result = writeDb(sql, data)

也就是无论输入的数据是否为字符串,下面都是%s,这里不存在%f这种概念。

sql = """ INSERT INTO user(height,weight,sex) VALUES(%s,%s,%s) """

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值