Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将日期值插入vertica_Python_Vertica - Fatal编程技术网

Python 如何将日期值插入vertica

Python 如何将日期值插入vertica,python,vertica,Python,Vertica,我正在用python编写一个小应用程序,从Oracle读取记录并将其插入Vertica 要从Oracle读取数据,我使用的是cx\u Oraclepython包;要将数据写入Vertica,我使用的是pyodbc包 当我从Oracle读取日期列时,我得到的格式如下: datetime.datetime(2011, 9, 13, 10, 47, 54, 795658) 编辑: 当我在vertica中点击以下查询时: INSERT INTO "TEST" (COL1) values(datetim

我正在用python编写一个小应用程序,从Oracle读取记录并将其插入Vertica

要从Oracle读取数据,我使用的是
cx\u Oracle
python包;要将数据写入Vertica,我使用的是
pyodbc

当我从Oracle读取日期列时,我得到的格式如下:

datetime.datetime(2011, 9, 13, 10, 47, 54, 795658)
编辑:

当我在vertica中点击以下查询时:

INSERT INTO "TEST" (COL1) values(datetime.datetime(2011, 9, 13, 10, 47, 54, 795658))
我得到以下错误:

Error: ERROR: schema "datetime" does not exist
SQLState:  3F000
ErrorCode: 0

我的问题是如何将其转换为Vertica时间戳列

您正在尝试混合Python代码和SQL;您的Vertica服务器正在尝试将
datetime.datetime
信息解释为SQL架构,但失败

改用:


这应该工作没有任何问题或手动转换
pyodbc
可以本地处理
datetime.datetime
实例(它们被转换为SQL\u时间戳值)。如果这不起作用,那将是ODBC驱动程序的问题,而不是python。我正在Vertica中运行以下查询,并返回一个错误:插入“TEST”(COL1)值(datetime.datetime(2011,9,13,10,47,54,795658)),您需要告诉我们什么错误。请完全回溯,您可以将其添加到您的问题中。有关格式的帮助,请参阅。我特意将其混合在一起以显示datetime。datetime(2011,9,13,10,47,54,795658)在Vertica上失败。我试图运行您的解决方案,但出现以下异常:AttributeError:type对象“datetime.datetime”没有属性“datetime”示例;您从模块中导入了
datetime
类型,我假设您只导入了模块;请看示例中的datetime引用。
from datetime import datetime

cursor.execute('INSERT INTO "TEST" (COL1) values(?)',
    datetime(2011, 9, 13, 10, 47, 54, 795658))