我有一个变量row_data = (searchindex, asin, title, browsenode, salesrank, brand, listprice, saleprice)
,其中任何一个元素都可能是NULL
,要插入数据库,我正在使用
sql = "INSERT INTO table (searchindex,asin,title,browsenode, salesrank, brand, listprice, saleprice) VALUES ('%s','%s','%s','%s', '%s', '%s', '%f', '%f')" % row_data
但是,由于我在row_data中添加了更多字段,因此效果不是很高。有没有更有效的方法来做到这一点?
由于
答案 0 :(得分:3)
请不要使用字符串插值来构造SQL,因为它非常不安全。使用MySQL库中的相应功能将值作为参数传递给查询。
表格中的列数几乎不会随着程序的开发而变化。也许每隔几个月一次,在这一点上,很难更新你的SQL。
或者你可以使用像SQLAlchemy这样的系统来处理你的很多问题,并且你不必自己编写很多SQL。