Python odo CSV 到 SQL - 没有这样的文件或目录

标签 python postgresql csv sqlalchemy odo

我正在尝试从我的本地计算机将文件上传到 PostgreSQL 数据库,我得到的错误是:

sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) could not open file "C:\Mar-2015.csv" for reading: No such file or directory

我尝试运行的命令是:

pcon = 'postgresql://user:password@ipaddress:5432/dbname::tablename'
path = os.path.normpath(
       'C:/Mar-2015.csv'))
o.odo(path, pcon, sep='|')

看起来 PostgreSQL 正在尝试在远程服务器上而不是在本地计算机上查找文件。在服务器上运行脚本(并将文件路径更改为服务器上的某个位置)运行正常,这似乎证实了我的怀疑。

是否可以使用 odo 将文件从我的本地机器上传到远程 PostgreSQL 机器?我正在使用 Amazon RDS。

最佳答案

我在使用 odo 将 CSV 加载到 PostgreSQL 数据库时遇到了类似的问题,但在 Docker 容器中。没错,odo 在 PostgreSQL 数据库的主机中查找文件。我设法使这项工作能够将文件夹安装到客户端和服务器容器中的相同路径。

要解决您的问题,您可以使用 scp 将文件上传到您的服务器并运行 Python 脚本,您需要通过 SSH 访问您的服务器

scp/path/to/local/file username@remote:/path/to/server/file

然后照常运行脚本。

关于Python odo CSV 到 SQL - 没有这样的文件或目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38475305/

相关文章:

python - Tortoise ORM for Python 没有返回实体的关系(Pyndantic,FastAPI)

python - 如何获取数组内部数组的最小值和最大值?

MySQL 的 At 时区转换

ruby-on-rails - Rails 网页有一个重定向循环 ERR_TOO_MANY_REDIRECTS

r - 将表格从 R 获取到 Libre Office Writer 的最佳方法?

python - 逗号 csv 文件后的最后一个值

python - 连接两个 csv 文件

python - TCP 套接字未连接 [WinError 10060] - Python

将参数传递给 PostgreSQL 查询时出现 Python TypeError : not all arguments converted during string formatting,

sql - 返回按查询分组的整行