我需要从mysql数据库查询表名称包含连字符的数据。
current_table = "tw3-10_1"
sql2 = "SELECT * FROM " + str(current_table )
cursor.execute(sql2)
不幸的是,我得到了: 1064,“您的SQL语法有错误;请查看与您的MariaDB服务器版本相对应的手册,以找到在第1行的'-10_1'附近使用的正确语法”)
有什么办法可以解决该问题?不幸的是,我无法更改表的名称.....
答案 0 :(得分:3)
如果表名或列名包含无用的字符,通常可以使用反引号引起来。
current_table = "`tw3-10_1`"
sql2 = "SELECT * FROM " + current_table
或者如果您愿意
current_table = "tw3-10_1"
sql2 = "SELECT * FROM `{}`".format(current_table)
答案 1 :(得分:0)
尝试这样,我不了解MariaDB,但是引号应该在SQL中起作用
<div>
{testsData.map(data => {
return (<Test {...data} />);
})}
</div>