sqlbuilder foreignkeyconstraint-set级联

ojsjcaue  于 2021-07-12  发布在  Java
关注(0)|答案(2)|浏览(269)

使用api sql builder com.healthmarketscience.sqlbuilder .

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 ?

rqcrx0a6

rqcrx0a61#

据我所知,你正在使用的图书馆( com.healthmarketscience.sqlbuilder )不允许用声明外键约束 ON UPDATE/DELETE CASCADE . 我已经检查了代码,但是这个功能没有实现。
原因可能是库的作者还没有实现这个功能,或者出于某种原因他们不打算实现它。您应该能够用 TRIGGER 但是图书馆似乎也不支持这些。
如果此功能对应用程序至关重要,您可能应该切换到允许它的库。

w8biq8rn

w8biq8rn2#

对于未来的读者,此功能已添加到版本3.0.1中的sqlbuilder中。一旦生成 ForeignKeyConstraintClause 例如,你可以打电话 setOnDeleteAction ( ReferentialAction.CASCADE )(更新操作也是如此)。

相关问题