0

我一直在尝试使用 Python 将数据加载到 Vertica DB 中。

def test():
    try:
        connection = psycopg2.connect(db_connect_string)
        cursor = connection.cursor()
    except psycopg2.DatabaseError, e:
        print 'Error %s' % e
        sys.exit(1)
    cursor.execute("INSERT INTO <table_name> (cusip, ticker) VALUES (%s, %s)"% (1234, "'tkr'"))
    connection.commit()

返回时没有错误,但随后的 SELECTS 不返回任何内容。(注意:SELECT 代码经过独立测试并且有效)。

4

2 回答 2

0

您正在使用针对 postgres 的 psycopg2,也许使用 pyodbc 代替(由 vertica 文档建议)可以解决您的问题?

我们在 $work 开发了一个开源库,以帮助将 vertica 与 python 结合使用,更具体地说,以正确的 Vertica 方式插入数据(单个 INSERT 非常慢)。也许它可以帮助你: http: //pypi.python.org/pypi/pyvertica

于 2013-01-18T07:49:25.290 回答
0

You should use the following syntax:

cursor.execute("INSERT INTO <table_name> (cusip, ticker) VALUES (%s, %s)"% (1234, "'tkr'");commit;)

or change

connection.commit()  

by

cursor.execute("commit")
于 2015-07-16T14:30:00.007 回答