python - 需要帮助将带有open()的文本文件插入到mysql中

时间:2010-10-13 04:59:32

标签: python

有人可以帮我解决mysql连接语句将文本文件导入mysql表(字段类型是长blob)吗?

例如:

cursor.execute("insert into mytable (file_contents) values ('"+open(filename,"r").read()+"')")

显然这不太实际,有人可以发布更好的方法吗?

1 个答案:

答案 0 :(得分:1)

由于特殊字符(引号!)或恶意SQL命令,将文件内容直接附加到SQL查询中是危险的。

试试这个:

with open(filename,"r") as infile:
    cursor.execute("insert into mytable (file_contents) values (%s)", (infile.read(), ))