Mer*_*lin 2 python mysql string sql-delete
如果列表LL:
LL = ['foo', bar', 'noo', 'boo',]
在MySQL表中,使用其他ID在列ID中进行测试.
我可以使用以下内容删除LL中ID为ID的所有行:
csr.execute("""DELETE FROM test.test WHERE ID = "Foo"; """)
csr.execute("""DELETE FROM test.test WHERE ID = "bar"; """)
csr.execute("""DELETE FROM test.test WHERE ID = "noo"; """)
csr.execute("""DELETE FROM test.test WHERE ID = "boo"; """)
Run Code Online (Sandbox Code Playgroud)
我怎么能以编程方式做到这一点?
您可以使用单个查询执行此操作:
id_list = ['abc', 'def', 'ghi']
query_string = "delete from test where id in (%s)" % ','.join(['?'] * len(id_list))
cursor.execute(query_string, id_list)
Run Code Online (Sandbox Code Playgroud)
由于cursor.execute在进行替换时会转义字符串,因此这个示例可以安全地防止SQL注入.
| 归档时间: |
|
| 查看次数: |
4085 次 |
| 最近记录: |