Skip to main content
 首页 » 编程设计

python之在 Python 中将元组转换为字符串时出错

2025年05月04日22webabcd

我有一个像这样的元组,它基本上是一个数据库记录

record = ('R70:Congestion Ratio', 'pm_201204151900_KPI1.csv', 'pmexport_04_15_2012_20_00.tar.gz') 

我正在尝试将其转换为元组,然后是字符串以获取查询

"INSERT INTO PM_NEW_COUNTERS (COUNTER_NAME, CSV_FILE_NAME, TAR_FILE_NAME) VALUES %s" %(tuple(record)) 

但是我得到 TypeError: not all arguments converted during string formatting 我做错了什么?是否有更好的方法来实现我想要实现的目标?

请您参考如下方法:

不要像这样构建 SQL。使用正确形式的数据库引擎。

在SQLite ,它是这样工作的:

cur.execute("""INSERT INTO PM_NEW_COUNTERS 
  (COUNTER_NAME, CSV_FILE_NAME, TAR_FILE_NAME) 
  VALUES (?, ?, ?)""", (a, b, c)) 

有关详细信息,请参阅 Python Database API Specification v2.0 .