使用DECLARE抛出无效的SQL语句

时间:2018-11-15 19:32:14

标签: python ms-access pyodbc

我正在使用pyodbc连接到.mdb文件并执行某些操作。

@app.route('/messageDump', methods=['POST'])
def messageDump():
  request_json     = request.get_json()
  print(request_json.get('firstName'))
  return redirect("/Contact", code=303)// gives error: Unexpected token < in JSON at position 0” 

  #return "helloWorld" //this is a comment: gives error Unexpected token h in JSON at position 0” 

上面的错误给我sql = ("""\ DECLARE @i int = 1; ...somevalid sql... """) cursor.execute(sql)

"Invalid SQL Statement; expected 'Delete',....在sql的任何地方都没有使用,并且下面的sql将在没有声明语句的情况下运行。我在很多地方都看到其他人这样做,例如here,所以应该有可能。

1 个答案:

答案 0 :(得分:2)

您正在连接到Access数据库(.mdb),因此需要使用SQL的Microsoft Access方言。 DECLARE是对Access SQL无效的T-SQL语句(SQL的Microsoft SQL Server方言)。

还请注意,Access SQL一次仅支持执行一条SQL语句。