0
使用web2py框架我想通过文件类型输入选择文件并将其内容保存到MySQL BLOB类型字段中。该文件包含二进制数据。使用web2py将BLOB保存到MySQL中
我需要使用DAL进行连接管理,但我有一个SQL过程来完成这项任务。问题是当我在下面尝试这个时,我得到了SQL语法的错误。
f = form.vars.element.file.read()
db.executesql("CALL someproc('" + f + "');")
我试过在很多方式插入原始二进制文件,并得到相同或类似的错误。我也试过直接使用MySQLdb:
f = form.vars.element.file.read()
db.cursor().execute("CALL someproc('" + f + "');")
db.commit()
这很好,但我需要使用上面的DAL版本,所以问题仍然是打开的。
我花了3天解决这个任务没有运气。 :( 请帮帮忙!
它接缝db._adapter.cursor.callproc(...)做了从3的技巧。谢谢! – RawBits 2014-10-18 15:30:32
在你的问题中,你指出'db.cursor()。execute(“CALL someproc('”+ f +'');“)''工作。在那个代码中,'db'是一个'MySQLdb'连接对象吗?如果是这样,我会希望'db._adapter.cursor.execute(“CALL someproc('”+ f +'');“)'也能够工作,因为它最终会调用cursor()。execute()'。 – Anthony 2014-10-18 17:22:53
对我来说它是一个python字符串处理问题。我认为直接通过DAL使用光标是一样的,但不知道它是什么。 – RawBits 2014-10-20 08:59:20