如何保存/复制vertica copy命令中csv列列表中未列出的表列的值

时间:2016-10-17 12:30:56

标签: python vertica

我正在使用以下代码将数据从csv复制到vertica表。

copy_command = 'COPY cb.table_format2 (ACC_NO, REF_NO, CUSTOMER_NAME, ADDRESS) FROM STDIN '\
    'ENCLOSED BY \'"\' delimiter \',\' SKIP 1 '\
    'exceptions \'' + file_path_exception + '\' rejected data \'' + file_path_rejected + '\';'
with open(file_path, "rb") as inf:
            cur.copy(copy_command, inf)

我有另一个名为' FileId'在vertica表中,我想用我的本地变量的值填充它,以便我可以稍后检查输入哪个数据对哪个fileId,并在我未来的要求中,我还想保存创建日期和用户会话ID in其他专栏也是。

请告诉我怎么办?甚至这是否可能? 如果无法做到这一点,那么有哪些其他方法可以确保哪些数据是针对哪个时间戳和用户会话进行保存/复制的?

提前感谢您的帮助。

更新: - 我正在使用python 3和vertica_python模块从python连接到vertica。

1 个答案:

答案 0 :(得分:1)

您需要将AS用于表达式的SQL表达式。你没有提到你正在使用哪个python模块,但你可以把它作为文字。添加一个新的字段条目,如下所示:

FILEID AS 123456

只是让你的字符串看起来那样(可能使用格式化程序或绑定值)。