这是我的代码:
import pymysql
import pymysql.cursors
# ...
for w in aList:
param = w
cursor.execute("SELECT * FROM test where text like %(p)s", {"p": "%%{}%%".format(param)})
result_set = cursor.fetchall()
for row in result_set:
print(row)
我没有执行任何错误。
与本网站上的类似问题和答案不同,我的问题是关于一个被两个通配符包围的变量。这个变量每次都会在循环中改变,而不是一个固定的字符串(在这种情况下它会执行)。
非常感谢提前!乔安妮
答案 0 :(得分:0)
就去做:
Traceback (most recent call last):
File "main.py", line 107, in <module>
retval = Solution().sortedInsert( head, D )
File "main.py", line 86, in sortedInsert
print(itr.val)
AttributeError: 'DLList' object has no attribute 'val'
不要使用 var sql = string.Format("SELECT {0} FROM {1} WHERE {2} = '{3}', fieldList, tableName, filterField, filterValue);
中的 for w in aList:
param = w
cursor.execute("SELECT * FROM test WHERE text LIKE %s", f"%{param}%")
result_set = cursor.fetchall()
for row in result_set:
print(row)
,因为它容易受到 SQL 注入攻击。