注册

mergeinto语法报违法唯一约束

活在当下 2024/05/21 477 1

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:dm8
【操作系统】:centos7
【CPU】:
【问题描述】*:表结构里边只有f_id是主键,没有其他的唯一键,执行的时候报违反唯一性约束

MERGE INTO t_authority t
USING(
SELECT
? AS f_id,
? AS f_component_code,
? AS f_name,
? AS f_create_time,
? AS f_timestamp,
? AS f_org_type,
? AS f_deleted,
? AS f_code,
? AS f_tenant_id,
? AS f_product_code,
? AS f_name_zh,
? AS f_name_en,
? AS f_name_sv
UNION ALL SELECT
? AS f_id,
? AS f_component_code,
? AS f_name,
? AS f_create_time,
? AS f_timestamp,
? AS f_org_type,
? AS f_deleted,
? AS f_code,
? AS f_tenant_id,
? AS f_product_code,
? AS f_name_zh,
? AS f_name_en,
? AS f_name_sv
) s
ON
( t.f_id = s.f_id ) WHEN MATCHED THEN
UPDATE SET

t.f_component_code = s.f_component_code
,
t.f_name = s.f_name
,
t.f_create_time = s.f_create_time
,
t.f_timestamp = s.f_timestamp
,
t.f_org_type = s.f_org_type
,
t.f_deleted = s.f_deleted
,
t.f_code = s.f_code
,
t.f_tenant_id = s.f_tenant_id
,
t.f_product_code = s.f_product_code
,
t.f_name_zh = s.f_name_zh
,
t.f_name_en = s.f_name_en
,
t.f_name_sv = s.f_name_sv
WHEN NOT MATCHED THEN
INSERT
(
t.f_id,
t.f_component_code,
t.f_name,
t.f_create_time,
t.f_timestamp,
t.f_org_type,
t.f_deleted,
t.f_code,
t.f_tenant_id,
t.f_product_code,
t.f_name_zh,
t.f_name_en,
t.f_name_sv
)
VALUES
(
s.f_id,
s.f_component_code,
s.f_name,
s.f_create_time,
s.f_timestamp,
s.f_org_type,
s.f_deleted,
s.f_code,
s.f_tenant_id,
s.f_product_code,
s.f_name_zh,
s.f_name_en,
s.f_name_sv
)

报错内容:

image.png

回答 0
暂无回答
扫一扫
联系客服