我试图上传一个二进制文件到一个postgres服务器。我想我正确地修改了一个Python脚本(https://gist.github.com/illume/8aa7c2d03273da846bf4361236a4f3f9#file-image_save-py),以便它可以连接到我的postgres服务器,但是我无法在命令行中调用该脚本。据我所知,我需要导航到图像所在的目录_保存.py编写脚本并调用它。我还将一个测试文件放在同一个目录中,因此我尝试执行:
python image_save.py shuttle.jpg
对此,我得到了一个错误:“error:需要一个参数--store--fetch。”
然后我试着:
^{pr2}$我得到了:
Traceback (most recent call last):
File "image_save.py", line 45, in <module>
main(sys.argv)
File "image_save.py", line 30, in main
curs.execute("INSERT INTO files(id, orig_filename, file_data) VALUES (DEFAULT,%s,%s) RETURNING id", (args.filename, filedata))
ValueError: A string literal cannot contain NUL (0x00) characters.
我也试过:
python -m image_save.py shuttle.jpg
我得到了“C:\Python27\python.exe:没有名为image的模块_保存.py““
我真的认为我只是错误地调用了脚本。有人能看出我做错了什么吗?在
这是因为您的文件包含空字符,这导致了错误,而且看起来Postgres不允许这些字符
要解决这个问题,只需使用这个简单的脚本从文件中删除那些不好的字符。在
相关问题 更多 >
编程相关推荐