mysql 添加多个同名的列,但用[i]分隔

wlp8pajw  于 12个月前  发布在  Mysql
关注(0)|答案(1)|浏览(113)

下面是MySQL代码

connection.execute(text("ALTER TABLE shotlist
    ADD COLUMN {gear_type} VARCHAR(100)"))

字符串
其中gear_type等于camera[1]
我尝试做的是,如果用户想添加另一个摄像头,但已经有一个,我将自动添加另一个名为camera[2]的列
但我一直收到这个错误
sqlalchemy.exc.ProgrammingError:(pymysql.err.ProgrammingError)(1064,“您的SQL语法中存在错误;请检查与MySQL服务器版本对应的手册,以获取在第1行'' Camera [1]' VARCHAR(100)'附近使用的正确语法”)
任何人都知道如何解决这个问题或一个很好的替代我试图做什么

7lrncoxx

7lrncoxx1#

我认为问题出在[]字符上。你可能想避免使用它们,或者尝试用反引号(`)来转义它们。例如:

connection.execute(text("ALTER TABLE shotlist
    ADD COLUMN `{gear_type}` VARCHAR(100)"))

字符串
或者甚至使用这种格式Camera#例如Camera0,Camera1等,而不是Camera[0]等。

相关问题