问题描述
我正在从 DBF 文件中检索数据,我需要生成一个 sql 脚本来将数据加载到数据库中。我已经有了这个,但这些值存储在一个元组中,在我创建 sql 脚本之前,我想去除元组的每个项目。例如,我得到这个:
INSERT INTO my_table (col1,col2,col3) VALUES('Value 1 ','TESTE123',' ADAD ')
我需要得到这个:
INSERT INTO my_table (col1,col3) VALUES('Value 1','ADAD')
为此,我正在尝试使用此代码:
with dbf.Table(filename) as table:
for record in table:
fields = dbf.field_names(table)
fields = ','.join(fields)
place_holders = ','.join(['?'] * len(fields))
values = tuple(record.strip())
sql = "insert into %s (%s) values(%s)" & ('my_table',fields,values)
我收到以下错误: dbf.FieldMissingError: 'STRIP' 表中没有这样的字段
你的目的是什么?
解决方法
update ... join ... group by
不是 dbf.Record
,也没有字符串方法。
如果记录中的每个字段都是文本(例如 str
或 Character
,而不是 Memo
或 Numeric
),那么您可以:
Date