在 Derby 服务器中,如何使用模式的系统表中的信息来创建选择语句以检索每个表的约束名称?
最佳答案
相关手册是Derby Reference Manual .有许多可用版本:10.13 是 2017 年 4 月的最新版本,但 10.3 是 2009 年 5 月的版本。
原答案
SELECT c.constraintname, t.tablename
FROM sysconstraints c, systables t
WHERE c.tableid = t.tableid;
由于足够新的 Derby 版本要求系统目录表以
sys.
为前缀。 (10.13 在 kiwicomb123 中被 comment 引用),您也可以修改查询以使用显式 JOIN 表示法,并使用:SELECT c.constraintname, t.tablename
FROM sys.sysconstraints c
JOIN sys.systables t
ON c.tableid = t.tableid;
您可以添加额外的列 - 例如,
c.type
获取约束类型。
关于sql - Derby - 约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/845766/