簡體   English   中英

將dbfpy中的數據插入MySQL的最佳方法是什么?

[英]What's the best way to insert data from dbfpy into MySQL?

我正在使用dbfpy模塊從DBF文件中讀取數據,目的是將相同的數據寫入等效的MySQL表中。 這是我的代碼的粗略版本:

###################
# BEGIN CONFIG 
###################

import_root = '/Users/shawn/Dropbox/ITistic Inc/Digital Aspire/Clients/MVP/Automated Sales Report Project/pdq dbf export 1.30.2013'
concept_id = 1

###################
# END CONFIG 
###################


import os
import datetime
from dbfpy import dbf
import MySQLdb


# Connect to MySQL
db = MySQLdb.connect('localhost', 'dbposireporting', 'posi', 'dbposireporting')
cur = db.cursor()


discount = dbf.Dbf(os.path.join(path, 'DISCOUNT.DBF'))

for rec in discount:
    print rec['date']
    print

    # LINE BELOW NOT WORKING:
    cur.execute("INSERT INTO discount VALUES (%s, %s, %s, %s, %s, %s)", rec)

discount.close()

db.close()

我要插入的MySQL表包含一個附加字段,我需要使用腳本頂部設置的concept_id值填充該字段。 該值不屬於DBF記錄(rec)。 我插入此數據的最佳方法是什么?

我認為您可以將cur.execute()行中的rec替換為

tuple(rec) + (concept_id,)

哦,別忘了再添加一個%s

如果任何字段是字符串,則需要將它們用引號引起來,以使SQL有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM