使用原始sql查询时遇到问题,该查询具有像
这样的变量表名cursor.execute("SELECT description FROM %s WHERE id = 1", [table_name])
%s
替换双引号中的字符串,该字符串未正确执行。当我执行上述语句时,我得到了
" NameError:name' nike_tshirts'未定义"
答案 0 :(得分:0)
您应该将表格名称放在引号'table_name'
/ "table_name"
之间,或者在table_name = 'nike_tshirts'
之前定义变量。
所以:
cursor.execute("SELECT description FROM %s WHERE id = 1", 'nike_tshirts')
或
table_name = 'nike_tshirts'
cursor.execute("SELECT description FROM %s WHERE id = 1", table_name)
应该可以正常工作。
Python引发了一个NameError,因为当你试图引用一个字符串时,它会认为你是指一个变量。