Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Python SQLAlchemy将JSON发布到数据库_Python_Sql_Sqlite_Sqlalchemy_Flask Sqlalchemy - Fatal编程技术网

使用Python SQLAlchemy将JSON发布到数据库

使用Python SQLAlchemy将JSON发布到数据库,python,sql,sqlite,sqlalchemy,flask-sqlalchemy,Python,Sql,Sqlite,Sqlalchemy,Flask Sqlalchemy,我正在尝试将从客户端发布的JSON数据添加到我的数据库中,我尝试使用以下代码: @app.route('/postjson', methods=['POST']) def postEventViewer(): print(request.is_json) content = request.get_json() items = [] for item in content: items.append(item['Values'])

我正在尝试将从客户端发布的JSON数据添加到我的数据库中,我尝试使用以下代码:

@app.route('/postjson', methods=['POST'])
def postEventViewer():
    print(request.is_json)

    content = request.get_json()
    items = []
    for item in content:
        items.append(item['Values'])
        items.append(item['Count'])
        items.append(item['Group'])
        items.append(item['Name'])

        values = item['Values']
        count = item['Count']
        group = item['Group']
        name = item['Name']

        engine.execute('INSERT INTO EventViewer (Values, Count, Group, Name) VALUES (:value, :count, :group, :name)', value=values, count=count, group=group, name=name)
@app.route('/postjson', methods=['POST'])
def postEventViewer():
    print(request.is_json)

    content = request.get_json()
    items = []
    for item in content:
        items.append(item['Values'])
        items.append(item['Count'])
        items.append(item['Group'])
        items.append(item['Name'])

        values = item['Values']
        count = item['Count']
        group = item['Group']
        name = item['Name']

        engine.execute('INSERT INTO EventViewer ("Values", Count, "Group", Name) VALUES (:value, :count, :group, :name)', value=values, count=count, group=group, name=name)
这给了我以下错误:

sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) near "Values": syntax error
但在等效数据库中使用相同的代码和较少的参数可以很好地工作,并像预期的那样添加到数据库中:

engine.execute('INSERT INTO person (name, balance) VALUES (:name, :balance)', name=name, balance=count)

我做错了什么?谢谢

此错误是因为
Values
sql
中的保留关键字。您需要用双引号包装它,以将其视为列名。

编辑

您还有一个关键字用作列名,即
Group
。您还需要将其用双引号括起来

尝试下面的查询


此错误是因为
Values
sql
中的保留关键字。您需要用双引号包装它,以将其视为列名。

编辑

您还有一个关键字用作列名,即
Group
。您还需要将其用双引号括起来

尝试下面的查询