gpt4 book ai didi

sql - 具有定义值的唯一约束

转载 作者:行者123 更新时间:2023-12-04 13:54:21 24 4
gpt4 key购买 nike

给定以下示例表结构,有没有一种方法可以添加到唯一约束以确保(GUID,'Y')组合的唯一性?

应用程序逻辑-通过guid更新会生成一个具有相同guid但具有新luid的新版本;并且先前变为非 Activity 状态('Y'->'N')

GUID-外部ID
LUID-内部ID

 create table id_active(
"GUID" RAW(16) NOT NULL,
"LUID" RAW(16) NOT NULL,
"IS_ACTIVE" char(1) NOT NULL CHECK ( "IS_ACTIVE" IN ('Y', 'N')),
PRIMARY KEY ("GUID", "LUID"),
--unique constraint goes here

最佳答案

您可以创建一个基于函数的唯一索引,并利用Oracle不会在b树索引中索引NULL值的事实。

CREATE UNIQUE INDEX one_active_guid
ON table_name( (CASE WHEN is_active = 'Y'
THEN guid
ELSE null
END) );

关于sql - 具有定义值的唯一约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6668022/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com