我刚刚开始学习Postgresql,并且无法弄清楚如何将csv或文本文件导入其中。我没有sql后台,我不确定是否需要在数据库中创建一个表,其列名与我要导入的csv文件完全相同。我无法打开我的csv文件,因为它太大(10G),所以我不知道它的列名是什么。在这种情况下,如何将其导入Postgresql。另一件事是我不确定是否需要将csv文件放在某个文件中。
答案 0 :(得分:0)
要将csv文件导入PostreSQL,您需要创建一个与必要数据库中csv文件值的列匹配的表。
从Linux导入时,您需要授予PostgreSQL用户访问将要导入的csv文件的权限。
sudo chown postgres:postgres /path/to/csvfile
如果您仍然没有足够的权限,那么您可以完全访问该文件
sudo chmod 777 /path/to/csvfile
然后,如果您愿意,可以从Linux命令行执行
/path/to/psql -d databasename -U postgres -c "copy tablename from '/path/to/csvfile' delimiter ',' csv"
如果要从psql命令行执行它,那么您可以使用
copy tablename from '/path/to/csvfile' delimiter ',' csv