【问题标题】:Using DateTimeField in Django with Oracle在 Django 中使用 DateTimeField 和 Oracle
【发布时间】:2013-10-18 06:05:05
【问题描述】:

我在 Oracle 中有一个表,它具有 DATE 类型的字段。我在 Django 中也有带有 DateTimeField 的模型。我想在 Oracle 的 DATE 字段中保存日期时间,但是 Django ORM 引发了这样的异常:

DatabaseError: ORA-01830: date format picture ends before converting entire input string

我尝试使用 Django DateField,但它没有保存日期时间,只有日期。如何使用 Django 在 Oracle 中保存日期时间(由于遗留问题,我不想在 Oracle 中使用 DATETIME 字段)。

我的模特:

class MyModel(models.Model):
    filled_date = models.DateTimeField(db_column='filled_date')

【问题讨论】:

  • 这是甲骨文方面的错误。您使用什么日期格式?
  • 我使用 django.timezone 的默认值:django.timezone.now()。

标签: python sql django oracle datetime


【解决方案1】:

我找到了问题的解决方案。 Oracle 等待格式 'YYYY-MM-DD HH24:MI:SS',但 datetime.datetime.now() 返回如下字符串:u'2013-10-18 05:50:44.332577'。 解决办法:

model.filled_date = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
model.save()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-02
    • 1970-01-01
    • 2019-06-13
    • 2021-07-06
    • 1970-01-01
    • 2016-04-27
    • 2016-10-06
    相关资源
    最近更新 更多