0

我在 Flask 中使用 SQLAlchemy 连接到我的 Postgres 服务器,现在我想执行一些原始 SQL 以将列插入表中。但是,我收到此错误:

sqlalchemy.exc.ProgrammingError: (ProgrammingError) syntax error at or near "user"
LINE 1: ALTER TABLE user ADD COLUMN permissions INTEGER
                    ^
 'ALTER TABLE user ADD COLUMN permissions INTEGER' {}

正如你所看到的,它说有一个 SQL 错误,虽然我不知道我可能做错了什么。

这是执行命令的非常简单的函数:

@staticmethod
def addColumn():
    db.engine.execute('ALTER TABLE user ADD COLUMN permissions INTEGER')

否则,该db对象可以完美地工作,并且连接或类似的东西没有任何问题。

我觉得我忽略了一些非常简单的东西,但我就是不知道它是什么。有人知道吗?

4

2 回答 2

2

PostgreSQL 文档说这USER是一个保留关键字,需要引用才能用作标识符。

Key Word      PostgreSQL      SQL 99      SQL 92
USER          reserved        reserved    reserved
于 2013-08-05T20:11:54.230 回答
1

user保留字,因此需要在 SQL 语句中特别引用?

于 2013-08-05T20:10:33.547 回答