PostgreSQL COPY命令:如何抑制“TIMESTAMP WITH TIMEZONE”的时区信息?

时间:2016-08-25 16:40:07

标签: python postgresql psycopg2

我从PostgreSQL中提取数据,以便将其加载到其他数据库。遗憾的是,该数据库无法识别时间戳中的时区信息。我使用python adn psycopg2将数据提取到csv。即使我在会话级别设置时区,我也会以这种格式获得时间戳:

    def to_csv(self, table, fname, sep = '|'):
    cur = self._conn.cursor()
    #cur.execute('select * from {}'.format(table))
    log.info('Unloading table {} to file {}'.format(table, fname))
    f = open(fname, 'w')
    cur.execute("SET LOCAL TIMEZONE='UTC'")
    cur.execute("SET datestyle='ISO'")

    cur.copy_to(f, table, sep)
    cur.close()
    f.close()
  

2015-08-18 12:54:29.528 ** + 00 **

在这种情况下如何删除+00?我想避免使用regexp解析文件或指定select语句并转换列类型。如果可能,寻找一些会话级别设置。

0 个答案:

没有答案