我对 PostgreSQL 很陌生。实际上我之前使用的是 MySQL,但出于某些项目特定的原因,我需要使用 postgreSQL 并进行 POC。
现在的问题是:我正在使用 MySQL LOAD DATA INFILE 命令将列内容从文件加载到我的数据库表中。
我的表结构是: 表名:MSISDN 表列名:ID(主键 - auto_generated)、JOB_ID、MSISDN、REGION、STATUS
但是我的输入文本文件(rawBase.txt)只有以下几列:MSISDN、REGION
所以我使用下面的命令来加载上面的 2 列,其中包含初始 JOB_ID 和 STATUS。
LOAD DATA INFILE 'D:\\project\\rawBase.txt' INTO TABLE MSISDN
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
(MSISDN,REGION)
SET JOB_ID = 'XYZ1374147779999', STATUS = 0;
如您所见,在 LOAD DATA INFILE 命令中有一个可用选项,我可以在其中为输入文本文件中不存在的列(JOB_ID 和 STATUS)设置特定的初始值。
现在,
在 postgreSQL 的情况下,我希望同样的事情发生。
COPY FROM 也有类似的命令,如下所示:
COPY MSISDN FROM 'D:\\project\\rawBase.txt' WITH DELIMITER AS ','
但我无法为输入文本文件中不存在的其余列(JOB_ID 和 STATUS)设置特定的初始值。我没有得到任何富有成效的例子。
如果可能的话,请给一些建议。
问候,桑迪