动态通过python更新表

时间:2018-05-26 15:57:14

标签: python sql cx-oracle

我想更新表格(TEMP):

value = 100 * 0.9
statement = 'update temp set tax = :1 where name = :2'
cur.execute(statement, ('value', 'emp1'))
con.commit()

还有其他方法可以动态更新表吗?

3 个答案:

答案 0 :(得分:1)

取消报价值。

value = 100 * 0.9
statement = 'update temp set tax = :1 where name = :2'
cur.execute(statement, (value, 'emp1'))
con.commit()

你传递了字符串'值'不是你的变量。

答案 1 :(得分:0)

以下是一些伪代码,因为我不知道您具体的数据库信息。与此类似的代码应该有效:

import pymysql

con = pymysql.connect(host='localhost', user='random',
                  passwd='pass', db='sample')

cur = con.cursor()

value = 100 * 0.9
name = 'emp1'
cur.execute('''UPDATE temp SET tax = %d where name = %s'''
          %(value, name))
con.commit()

答案 2 :(得分:-1)

试试这个:

#!/usr/bin/env python3.6
table, tax, name = 'temp', 100 * 0.9, 'emp1'
statement = f'update {table} set tax = :1 where name = :2'
cur.execute(statement, (tax, name))
con.commit()