甲骨文 sql 到 db2 sql

oracle sql to db2 sql

我必须更改 Oracle SQL DDL 才能在 zOS/DB2 中使用它。现在我卡在这部分了:

 ... ATTRIBUTE1 char check (IS_FINISHED in (0,1)),
     ATTRIBUTE2 char check (HAS_ERROR in (0,1)),...

我从来没有在 Oracle 中使用过 'check',在 DB2 中也没有。 有人可以帮我吗?谢谢你。

这些是内联检查约束。通常,列名和类型会匹配。在任一数据库中,我都希望:

 IS_FINISHED char(1) check (IS_FINISHED in ('0', '1')),
 HAS_ERROR char(1) check (HAS_ERROR in ('0', '1')),

如果数据库中不允许内联 check 约束,那么您可以像添加其他约束一样添加它们:

alter table t
    add constraint chk_t_is_finished check (IS_FINISHED in ('0', '1'),
    add constraint chk_t_has_error check (HAS_ERROR in ('0', '1');