引起的是:org.postgresql.util.psqlexception:错误:上一次预期列之后的额外数据

发布于 2025-01-23 18:21:09 字数 1768 浏览 3 评论 0原文

我正在尝试将CS​​V文件导入Postgres DB:

CREATE EXTERNAL TABLE dwh.stg.products_mapping_temp_ext (
    date varchar,
    product_code varchar,
    product_name varchar,
    product_operation_code varchar,
    product_operation_name varchar,
    department varchar,
    process_code varchar,
    process_name varchar,
    process_stage_code varchar,
    process_stage_name varchar
)
LOCATION (
    'gpfdist://worker:6666/dags/csv/quarter_kpi/products_mapping_temp_ext.csv'
) ON ALL
FORMAT 'CSV' ( delimiter ';' null '' escape '"' quote '"' header fill missing fields )
ENCODING 'WIN1251';

我的CSV的内容是:

date; product_code; product_name; product_operation_code; product_operation_name;department;process_code;process_name ;process_stage_code;process_stage_name.

函数IS:

CREATE OR REPLACE FUNCTION etl.fnc_products_mapping_temp_sa_load()
    RETURNS void
    LANGUAGE plpgsql
    VOLATILE
AS $$
     BEGIN 
     TRUNCATE TABLE stg.products_mapping_temp; 
     INSERT INTO stg.products_mapping_temp(
        "date",
        product_code,
        product_name,
        product_operation_code,
        product_operation_name,
        department,
        process_code,
        process_name,
        process_stage_code,
        process_stage_name
    ) 
     SELECT 
        to_date("date", 'dd.mm.yyyy'),
        product_code,
        product_name,
        product_operation_code,
        product_operation_name,
        department,
        ltrim(rtrim(process_code)),
        ltrim(rtrim(process_name)),
        ltrim(rtrim(process_stage_code)),
        ltrim(rtrim(process_stage_name)) 
    FROM stg.products_mapping_temp_ext; 
     END; 
$$
EXECUTE ON ANY;

I am trying to import a csv file to postgres db:

CREATE EXTERNAL TABLE dwh.stg.products_mapping_temp_ext (
    date varchar,
    product_code varchar,
    product_name varchar,
    product_operation_code varchar,
    product_operation_name varchar,
    department varchar,
    process_code varchar,
    process_name varchar,
    process_stage_code varchar,
    process_stage_name varchar
)
LOCATION (
    'gpfdist://worker:6666/dags/csv/quarter_kpi/products_mapping_temp_ext.csv'
) ON ALL
FORMAT 'CSV' ( delimiter ';' null '' escape '"' quote '"' header fill missing fields )
ENCODING 'WIN1251';

The content of my CSV is:

date; product_code; product_name; product_operation_code; product_operation_name;department;process_code;process_name ;process_stage_code;process_stage_name.

function is:

CREATE OR REPLACE FUNCTION etl.fnc_products_mapping_temp_sa_load()
    RETURNS void
    LANGUAGE plpgsql
    VOLATILE
AS $
     BEGIN 
     TRUNCATE TABLE stg.products_mapping_temp; 
     INSERT INTO stg.products_mapping_temp(
        "date",
        product_code,
        product_name,
        product_operation_code,
        product_operation_name,
        department,
        process_code,
        process_name,
        process_stage_code,
        process_stage_name
    ) 
     SELECT 
        to_date("date", 'dd.mm.yyyy'),
        product_code,
        product_name,
        product_operation_code,
        product_operation_name,
        department,
        ltrim(rtrim(process_code)),
        ltrim(rtrim(process_name)),
        ltrim(rtrim(process_stage_code)),
        ltrim(rtrim(process_stage_name)) 
    FROM stg.products_mapping_temp_ext; 
     END; 
$
EXECUTE ON ANY;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文