我想将存储在字典中的值插入表中。该字典包含1000000个值。
我的字典样本是:
mydictationary: {"a":1; "b":2; "c":3; "d":4}
我期待使用 copy_from 命令(psycopg2)将这些值复制到表中。 类似的东西:
cur.copy_from (mydictationary, myTable)
但是可以使用copy_from命令来复制字典中的值???我想使用copy_from命令,因为这可能比使用sql insert语句更快。
答案 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')