sql - Derby - 约束

标签 sql schema derby

在 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/

相关文章:

sql - 表/ View 'NEW' 不存在, Derby

java - 如何添加子选择来选择

php - mySQL - 在一个查询中使用两个 JOIN?

mysql - 如何使用表中的参数计算时间戳差异

json - JSON 中的重复唯一属性 'sameAs'

java - Derby EmbeddedDriver 在没有 Class.forName 的情况下工作

php - while 循环内的 foreach 不起作用

php - 将 friend 和用户表链接在一起(以获取 friend 的用户名?)

arrays - 验证数组内容 Mongoose 模型

java - 在简单的嵌入式数据库中要保持什么内容以及要重新创建什么内容?