使用SQL Builder com.healthmarketscience.sqlbuilder API。
DbForeignKeyConstraint constraint = dbTable.foreignKey("fk_" + tableName + "_" + foreignTableName,
columnList.toArray(new String[0]),
foreignTableName,
foreignColumnList.toArray(new String[0]));如何设置constraint以执行ON UPDATE CASCADE和ON DELETE CASCADE
发布于 2020-02-17 19:23:31
据我所知,您正在使用的库(com.healthmarketscience.sqlbuilder)不允许使用ON UPDATE/DELETE CASCADE声明外键约束。我已经检查了代码,但是这个功能并没有实现。
原因可能是库的作者还没有实现这个功能,或者他们出于某种原因不打算实现它。您应该能够使用TRIGGER重现该功能,但是llibrary似乎也不支持这些功能。
如果此功能对您的应用程序至关重要,那么您可能应该切换到允许它的库。
发布于 2020-09-10 21:46:14
对于将来的读者,此功能已添加到3.0.1版的SQLBuilder中。一旦生成了ForeignKeyConstraintClause实例,就可以调用setOnDeleteAction(ReferentialAction.CASCADE) (对于update action也是如此)。
https://stackoverflow.com/questions/60204710
复制相似问题