栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在PostgreSQL中对被引用的表进行约束的外键

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在PostgreSQL中对被引用的表进行约束的外键

您可以为此使用CHECK约束。您不能将查询置于CHECK约束中,但可以调用一个函数。因此,我们构建了一个简单的函数来告诉我们a

pluginid
是否为矩阵:

create or replace function is_matrix(int) returns boolean as $$    select exists (        select 1        from plugins        where id   = $1          and type = 'matrix'    );$$ language sql;

并将其包装在CHECK约束中:

alter table matrix_params add constraint chk_is_matrix check (is_matrix(pluginid));

然后:

=> insert into matrix_params values (1,1);=> insert into matrix_params values (2,3);ERROR:  new row for relation "matrix_params" violates check constraint "chk_is_matrix"

FK负责参照完整性和级联。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/670372.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号