問題タブ [cascade]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1013 参照

hibernate - 両方の外部キーでカスケードと Hibernate @ManyToMany 関連付けをセットアップする方法は?

休止状態を使用して @ManyToMany 関連付けをマップしようとしています。しかし、これまでのところ、外部キーの 1 つにしかカスケードできませんでした。

私のソースコードは次のようになります。

hibernatetool の出力:

どういうわけか、Passenger クラスの @OnDelete(action=OnDeleteAction.CASCADE) アノテーションが hibernate によって破棄されます。

0 投票する
2 に答える
9493 参照

hibernate - JPA/Hibernateで実行するためにdelete-orphanを「すべてカスケード」する必要があるのはなぜですか?

親が保存または永続化されているときに子を保存または永続化させたくないため、カスケード「削除」(jpa) および「delete-orphan」を使用して 1 対多の関係をマップしようとしています (セキュリティ上の理由によるクライアントからサーバーへ (GWT、Gilead))

しかし、この構成は機能しません。カスケード「すべて」で試してみると、実行されます。delete-orphan オプションを実行するためにカスケード "all" が必要なのはなぜですか?

コードは次のとおりです (簡単にするために id やその他のフィールドはありません。クラス Thread は、カスケードなしで単純な多対 1 のプロパティを定義します):removeThreadトランザクション関数で関数を使用すると実行されませんが、編集cascade.Removeするcascade.Allと実行されます。 .

0 投票する
1 に答える
17313 参照

ruby-on-rails - Railsで親が削除されたときに子オブジェクトを削除するにはどうすればよいですか?

モデルa:

モデルb:

モデルc:

を削除するときは、子を参照する可能性のあるものから削除されるようaに、子も削除してもらいたいと思います。ただし、上記は機能していません。助けていただければ幸いです。b'sc's

0 投票する
7 に答える
14313 参照

sql - 外部キーのカスケードに依存するのは悪いことですか?

私が関与しているプロジェクトの主任開発者は、カスケードに依存して関連する行を削除するのは悪い習慣だと言います。

これがどのように悪いのかわかりませんが、そうである場合/理由についてのあなたの考えを知りたいです.

0 投票する
2 に答える
7478 参照

tsql - T-SQL:DROPテーブルカスケード制約は同等ですか?

オラクルでは、DROP TABLE ...カスケード制約を発行でき、FKなどについて文句を言うことはありません。

T-SQLに同等のものはありますか?

0 投票する
7 に答える
2705 参照

nhibernate - 参照されたオブジェクトを削除できるかどうかを確認する方法は?

他のテーブルで外部キーとして使用される「Customer」というオブジェクトがあります。

問題は、「Customer」を削除できるかどうか (つまり、他のテーブルで参照されていないかどうか) を知りたいということです。

これは Nhibernate で可能ですか?

0 投票する
1 に答える
1282 参照

hibernate - ハイバネート、インストルメンテーション、削除のカスケード オーダー

JPA 接続エンティティを含む複雑なオブジェクト グラフがあります。親を削除すると、削除が子に正しくカスケードされます。

次に、(1 対 1 の関係を熱心に読み込まないように) 親クラスをインストルメント化します。削除すると、参照整合性違反の例外が発生します。フラッシュ時のクエリの休止状態の問題を見ると、休止状態が実際に間違った順序でレコードを削除しようとしていることがわかります。したがって、データベースは参照整合性について不平を言い、例外がスローされます。

これは、エンティティがインストルメント化されている場合にのみ現れるのはなぜですか? カスケード削除の順序を変更する方法はありますか?

0 投票する
1 に答える
1296 参照

nhibernate - NHibernateでの子レコードの削除の例外

単純な親/子テーブルがあります。コントラクトは親テーブルです。各契約は複数のユニットを持つことができます。

これが私のC#クラス定義(簡略化)です:

AutoMappingでFluentNHibernateを使用しています。これが私のAutoMappingクラスです:

Fluentが生成するHBM.XMLファイルは次のとおりです。

(単位テーブルの場合):

(および契約テーブルの場合):

単体テストの目的で、各リポジトリに「Clear()」メソッドがあるので、既知の空のデータベースから始めることができます。それは単にします

続いてDebug.Assert(Repository.GetCount()== 0);

私の問題は、UnitsRepository.Clear()を実行すると、NHibernate.ObjectDeleteExceptionが発生することです。削除されたオブジェクトはカスケードによって再保存されます(削除されたオブジェクトを関連付けから削除します)

私はそのエラーをグーグルで検索し、それに関する多くの記事を見つけましたが、提案されたものは何も機能していないようです。親マッピングに「.Inverse()」を追加しました。カスケードを「All」から「SaveUpdate」に変更してみました(一部の投稿で問題として引用されている「AllDeleteOrphans」に設定されていませんでした)。すべてのリポジトリをクリアし、そのすべてをラップしてみました。取引。Session.Deleteの後にフラッシュを追加してみました。最初に親リポジトリをクリアしてから、子をクリアしてみました。エラーを取り除くものは何もありません。

どんな助けでもいただければ幸いです。

0 投票する
1 に答える
6218 参照

c# - nhibernate は削除の子をカスケードしません

シナリオは次のとおりです。

Parentという名前の 3 つのオブジェクト (名前を簡略化しました) があります。親の子と子の子、
親の子は親のセット、子の子は子のセットです。

マッピングは次のとおりです(関連部分)

親の子

私が達成したいのは、親を削除すると、子の子までカスケード削除が行われることです。しかし、現在起こっていることはこれです。

(これは純粋にマッピング テスト目的のためです) 親エンティティを取得します (正常に動作します)

今削除部分

カスケードと逆で「null値を挿入できません」というエラーを解決した後、このコードですべてが削除されることを願っていますが、親のみが削除されています。

見逃されそうなマッピングの何かを見落としていませんか? 正しい方向へのヒントは大歓迎です!


ディエゴ、要点を答えてくれてありがとう。(と説明)

これはon-delete="cascade"、データベースではなくコードで可能な限り多くの制御が必要なためです。

以下に投稿されたコードは、(動作中の) 結果です。

親の子

これが同じ問題を抱えている人々に役立つことを願っています!

0 投票する
2 に答える
1169 参照

mysql - MySQL InnoDB ON UPDATE CASCADE 制約は、MySQL REPLACE コマンド中に適切に更新されますか?

テーブル A への外部キー参照 (ON UPDATE CASCADE に設定) を持つテーブル B があり、

コマンド、参照は正しく更新されますか?

ON DELETE CASCADE について話しているのではないことに注意してください。そのセットがある場合、REPLACEコマンドがテーブルBのレコードを削除することを私は知っています。