0

我正在使用 PostgreSQL 9.0.3。我有一个 Excel 电子表格,其中包含大量数据要加载到 Windows 操作系统中的几个表中。

我已经编写了脚本来从输入文件中获取数据并插入到大约 15 个表中。这不能通过 COPY 或 Import 来完成。我将输入文件命名为DATALD.
我找到了指向 db 和脚本 sql的psql命令。但我需要知道如何将输入文件与脚本一起提供的命令,以便将数据插入表中。-d-f

例如,这就是我所做的:

begin
for emp in (select distinct w_name from DATALD where w_name <> 'w_name') 
--insert in a loop 
INSERT INTO tblemployer( id_employer, employer_name,date_created, created_by) 
  VALUES (employer_id,emp.w_name,now(),'SYSTEM1'); 

有人可以帮忙吗?

4

1 回答 1

1

对于SQL 脚本,您必须..

  • 要么在脚本中内联数据(在同一个文件中)。
  • 或者您需要利用COPY将数据导入 Postgres。

我想您使用临时临时表,因为格式似乎不适合目标表。代码示例:
如何在 PostreSQL 中仅批量插入新行

还有其他选项,例如pg_read_file(). 但:

这些功能的使用仅限于超级用户。

用于特殊目的。

于 2013-07-16T21:06:50.303 回答