【问题标题】:In Python 3, using mysql.connector, passing mysql function in insert在 Python 3 中,使用 mysql.connector,在 insert 中传递 mysql 函数
【发布时间】:2015-02-23 01:58:41
【问题描述】:

我正在使用 Python 3.4 和 mysql.connector。我想在插入语句中输入这样的内容:

st = 'insert into tbl(rate,inputDt) values(%s,%s)'
data = (rate, NOW())
cur.execute(st,data)

NOW() 是当前日期时间的 mysql 函数

我可以通过在Python中构造一个变量来得到等价的值:

today = date.today()

但是我怎样才能像上面那样传递mysql函数呢?

【问题讨论】:

  • 有什么特别的原因需要使用 NOW() 而不是在 python 中获取时间?在资源效率方面,NOW() 绝对是重击

标签: python mysql mysql-python


【解决方案1】:

不熟悉这个,但我认为你可以将 MySQL 函数作为字符串传递。

st = 'insert into tbl(rate,inputDt) values(%s,NOW())'
data = (rate)
cur.execute(st,data)

【讨论】:

  • 恐怕mysql驱动会把它解释为字符串并放在引号中。
  • 嗯,好的。编辑了我的答案:直接在语句中写呢?喜欢'insert into tbl(rate,inputDt) values(%s, NOW())'
  • 是的,这可行,但我不确定 OP 是否可以接受 - 取决于用例。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-02-16
  • 2019-10-25
  • 2014-08-04
  • 1970-01-01
  • 1970-01-01
  • 2021-06-01
  • 1970-01-01
相关资源
最近更新 更多