HSQLDB 删除生成的引用其他表的约束

Posted

技术标签:

【中文标题】HSQLDB 删除生成的引用其他表的约束【英文标题】:HSQLDB remove generated constraints referencing to other table 【发布时间】:2015-01-22 06:47:28 【问题描述】:

在数据库方案中有一些循环引用。它会导致问题。引用由提供者使用生成的名称创建:

alter table users add constraint FK_olm1qeb13uc1worutbx1sc22k foreign key (USER_ID) references user_settings
alter table user_settings add constraint FK_3ry0dxqxek7eg9frxr6bpofr9 foreign key (USER_ID) references users

我需要这里描述的解决方案,but for MsSql Server。 当我只知道表名时,HSQLDB 中是否有办法删除所有具体类型的约束(外键 (USER_ID) 引用)?

不写存储过程。

【问题讨论】:

【参考方案1】:

使用对 INFORMATION_SCHEMA 的查询来查找特定表上使用的约束的名称:

SELECT * FROM INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE WHERE TABLE_NAME = 'USERS'

【讨论】:

我需要一种通过脚本删除约束的方法。不仅仅是一个返回约束名称的简单查询。就像这样的答案:***.com/questions/8641954/…

以上是关于HSQLDB 删除生成的引用其他表的约束的主要内容,如果未能解决你的问题,请参考以下文章

删除提示 FOREIGN KEY 约束引用”

无法删除表:外键约束失败

HSQLDB 索引和多列约束

在 HSQLDB 上使用 Spring DBUnit 进行休眠和 Spring 数据 - 由于外键约束而无法删除

JAVA hibernate中删除表遇到主键被外键引用,违反完整约束条件,不能删除的问题 2张表,一张主表user,有

参照完整性-外键约束