gpt4 book ai didi

sql - 将 Oracle 表限制为单行的简单约束

转载 作者:行者123 更新时间:2023-12-02 20:02:00 24 4
gpt4 key购买 nike

我正在寻找一种简单的方法来将应用程序配置表限制为 1 行。我知道我可以使用包含子查询的虚拟列或顶部的物化 View 来完成此操作,但实际上这是一个简单的表,我想要一个约束,它不需要比创建表更多的行来实现。

我想到的最简单的方法是将 ID 字段设置为 1,并且检查约束 ID 必须为 1 - 但这会向表中添加一个令人困惑的额外字段,所以我希望有一些明显的东西我' m 缺失,例如 UNIQUE_FIELD = MAX(UNIQUE_FIELD) 的检查约束,这是不允许的。

最佳答案

Simplest 是基于常量的唯一基于函数的索引

> create unique index table_uk on one_row_table ('1');

替代方案:

您可以查看 DUAL,而不是表格这实际上意味着任何更新实际上都是创建或替换 View ,这可能不合适。如果函数从包体或全局应用程序上下文返回值可能会导致无效问题,那么它可能是一种解决方法。

在 11g 中,可以选择只读表(或者,在早期版本中,只读表空间中的表)。

关于sql - 将 Oracle 表限制为单行的简单约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5477936/

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