对此仍然是新的,但我有一个连接到python(flask)应用程序的PSQL表 使用此列描述
id integer Auto Increment [nextval('users_id_seq')]
name character varying
pw character varying
email character varying
这个函数在用户访问@app.route("/registed" ,methods=["POST"])
之后执行
def registed():
Name1 = "test"
Email1 = "test1"
pw1 = "test2"
pwh = "test3"
db.execute("INSERT INTO users (name,pw,email) VALUES (Name1,pw1,Email1)")
db.commit()
return render_template("registed.html",name=Name1,email=Email1,pw=pw1,pwh=pwh)
这个错误不断地出现
LINE 1: INSERT INTO users (name,pw,email) VALUES (Name1,pw1,Email1) ^ HINT: Perhaps you meant to reference the column "users.name". [SQL: 'INSERT INTO users (name,pw,email) VALUES (Name1,pw1,Email1)'] (Background on this error at: http://*****/*/***)
我用heroku做这个测试项目
试试这个
试试这个,因为Name1 pw1和Email1是变量。你知道吗
不能像这样直接将变量传递到SQL查询中。 只有在传入的值是文本时才能执行此操作。 要传入变量,需要使用占位符。 因此,
db.execute
行应更改为-->我们在这里要做的是,在查询中用占位符替换变量,方法是在变量前面使用冒号(:),然后将它们的值作为python字典传入。你知道吗
相关问题 更多 >
编程相关推荐