【问题标题】:make permutations impossible to insert db2使排列无法插入 db2
【发布时间】:2013-03-16 08:22:10
【问题描述】:

我很想在我遇到的一个小问题上得到一些帮助。
假设我有一个名为 table0 的表,它有两列 c 和 d。
假设我做了一个插入,例如'插入 table0 值('paco',sono')

如何制作此表,以使我无法“插入 table0 值”(“sono”、“paco”)?
换句话说,假设这个表已经在列 c 和 d 上定义了一个唯一键,你如何进一步限制表不允许排列?

我已经尝试过 'alter table table0 add constraint new unique(d,c)' 但这不起作用

【问题讨论】:

  • 提示:在插入时写入触发器以停止它。

标签: sql database insert db2


【解决方案1】:

试试这个

CREATE TRIGGER table0 
NO CASCADE BEFORE INSERT ON table0 
REFERENCING NEW AS Newrow
FOR EACH ROW MODE DB2SQL
WHEN (Newrow.C IN (SELECT D FROM table0) OR Newrow.D IN (SELECT C FROM table0)) 
SIGNAL SQLSTATE '70001' ('Duplicate Exists'); 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多