Copy_from命令用于复制表中字典的值

时间:2011-04-21 13:53:53

标签: python

我想将存储在字典中的值插入表中。该字典包含1000000个值。

我的字典样本是:

 mydictationary: {"a":1; "b":2; "c":3; "d":4}

我期待使用 copy_from 命令(psycopg2)将这些值复制到表中。 类似的东西:

cur.copy_from (mydictationary, myTable)

但是可以使用copy_from命令来复制字典中的值???我想使用copy_from命令,因为这可能比使用sql insert语句更快。

1 个答案:

答案 0 :(得分:2)

正常的方式:

cur.executemany('INSERT INTO myTable (key, value) VALUES (%s, %s)', mydictionary.items())

如果您坚持使用StringIO

import StringIO
dictFile = StringIO.StringIO()
for item in dictionary.iteritems():
    dictFile.write("%s\t%s\n"%item)
cur.copy_from(dictFile, 'myTable')