【问题标题】:Not a valid month error不是有效的月份错误
【发布时间】:2016-04-19 14:54:33
【问题描述】:

我在 python 开发方面遇到了问题。

我尝试将记录插入到我的数据库表中,但是当我尝试使用 cx_Oracle for python 插入记录时出现此错误:not a valid month.

当我尝试在sqldeveloper 中运行同样的查询时,没有问题。

这是我的代码:

cursor.execute("insert into mytable(tableid,tablename,timecreate)values('45125','test',to_timestamp(to_char(sysdate,'dd/mm/yy')))")

不知道有什么区别?

你有什么想法吗?

【问题讨论】:

  • 无效。你为什么不使用 systimestamp 函数而不是 sysdate?

标签: python sql oracle


【解决方案1】:

假设您只需要 sysdate 中的 mm/dd/yy(删除小时、分钟、秒)并转换为时间戳,请尝试使用此方法而不是您的 to_timestamp 调用:

CAST (trunc(SYSDATE) AS TIMESTAMP)

无需转换为 char 并返回。

【讨论】:

  • 即使这也太复杂了 - 为什么不使用您自己的建议,只需编写 trunc(SYSTIMESTAMP) 并避免使用任何强制转换?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-24
  • 1970-01-01
  • 1970-01-01
  • 2020-08-08
  • 2021-12-10
相关资源
最近更新 更多