将CSV文件Odo到PostgreSQL数据库中



我是PostgreSQL和odo的新手。我已经创建了以下内容:(我正在Ubuntu上工作)。

我创建了superusertestuser,并使用这个用户(角色)创建了postgresql数据库testuser(通过运行psql,然后运行CREATE database testuser;)。在这个数据库中有一个名为testtable的表。我用psycopg2插入这个数据库没有问题。但是我遇到了python的odo模块。由于我的目标是将some_file.csv加载到postgresql数据库中,我想我会使用它

import odo
odo.odo('some_file.csv', 'postgresql://testuser:<password>@127.0.0.1:5432/testuser::testtable')

但它不起作用,我得到

NotImplementedError: Unable to parse uri to data resource: postgresql://testuser:<password>@localhost:5432/testuser 

注意:我有测试用户的密码,而不是<password>

也许是显而易见的,我必须实现它。(就像在这里的最后一段中一样),但我认为postgresql是受支持的(因为postgresql在那里被提到过几次,并有例子)。我试着在这里的连接URI下查找,但没有发现错误。这是odo文档。

我已经使用odo将csv文件插入到postgresql中,因此它是受支持的。您的连接URI和代码与我的基本相同。您是否安装了sqlalchemy软件包?我相信odo在后台使用了sqlalchemypsycopg2。我能够在没有安装sqlalchemy的系统上复制您的错误,安装sqlalchemy使我克服了错误。

最新更新