首页 > 解决方案 > 如何获取要插入 mysql 的函数参数的值

问题描述

我将值传递给函数以在数据库中插入数据。

def add_user(id,username,cell,address):
    sql = "INSERT INTO customers (name, address,cell) VALUES (%s, %s,%s)"
    val = ("John", "Highway 21","abc")
    mycursor.execute(sql, val)

即我正在添加只有手机没有地址的用户

add_user('shahid','03131234567')

然后其他用户只有地址

add_user('大卫','纽约')

我如何处理第二个值是地址或手机字段谢谢。

标签: pythonmysql

解决方案


更新2

尝试这个:

def add_user(id, *new_user):
    new_user = new_user[0]
    sql = "INSERT INTO customers (name,cell, address) VALUES (%s, %s, %s)"
    val = (new_user.get('username'), new_user.get('cell'), new_user.get('address'))
    mycursor.execute(sql, val)


user1 = {'username': 'user1', 'cell': '123345', 'address': 'fake address 12'}
add_user(1, user1)
user2 = {'username': 'user1', 'address': 'fake address 12'}
add_user(2, user2)

推荐阅读