首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >违反外键ORA-00001 unique约束的SQL约束

违反外键ORA-00001 unique约束的SQL约束
EN

Stack Overflow用户
提问于 2020-06-19 01:16:41
回答 1查看 140关注 0票数 0

以下是错误消息:

代码语言:javascript
复制
Error starting at line : 207 in command -
    INSERT ALL
        INTO employees
            VALUES
                  ( 777, 'Pereira', 'Daniele',
                    'x1400', 'name@email.com', '4',
                    1088, 'Head Cashier' )
        INTO employees
            VALUES
                 ( 18161884, 'Samuel', 'Rowbotham',
                   'x6400', 'drsamuelrowbotham@parallax.co.uk', '4',
                   1088, 'Cashier' )
    SELECT * FROM employees WHERE reportsto = 1088
Error report -
ORA-00001: unique constraint (DBS211_202A27.SYS_C001065272) violated

即使我禁用了外键约束,也会发生这种情况:

代码:

代码语言:javascript
复制
ALTER TABLE employees
DISABLE CONSTRAINT EMP_RTEMP_FK;
INSERT ALL
    INTO employees
        VALUES
              ( 777, 'Pereira', 'Daniele',
                'x1400', 'name@email.com', '4',
                1088, 'Head Cashier' )
    INTO employees
        VALUES
             ( 18161884, 'Samuel', 'Rowbotham',
               'x6400', 'drsamuelrowbotham@parallax.co.uk', '4',
               1088, 'Cashier' )
SELECT * FROM employees WHERE reportsto = 1088;
ALTER TABLE employees
ENABLE CONSTRAINT EMP_RTEMP_FK;



Table EMPLOYEES altered.
Error starting at line : 207 in command -
    INSERT ALL
        INTO employees
            VALUES
                  ( 777, 'Pereira', 'Daniele',
                    'x1400', 'name@email.com', '4',
                    1088, 'Head Cashier' )
        INTO employees
            VALUES
                 ( 18161884, 'Samuel', 'Rowbotham',
                   'x6400', 'drsamuelrowbotham@parallax.co.uk', '4',
                   1088, 'Cashier' )
    SELECT * FROM employees WHERE reportsto = 1088
Error report -
ORA-00001: unique constraint (DBS211_202A27.SYS_C001065272) violated
Table EMPLOYEES altered.

约束信息:EMP_RTEMP_FK Foreign_Key DBS211_202A27 EMPLOYEES SYS_C001065272 NO ACTION ENABLED NOT DEFERRABLE VALIDATED USER NAME 20-05-26

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-26 08:08:27

代码语言:javascript
复制
INSERT ALL
    INTO employees
        VALUES
              ( 777, 'Pereira', 'Daniele',
                'x1400', 'name@email.com', '4',
                1088, 'Head Cashier' )
    INTO employees
        VALUES
             ( 18161884, 'Samuel', 'Rowbotham',
               'x6400', 'drsamuelrowbotham@parallax.co.uk', '4',
               1800, 'Cashier' )

这是一个RTFQ/长时间工作和变得模糊的案例。第二个值是1800,而不是两者都是1088。这最终起到了作用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62455671

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档