問題タブ [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 投票する
3 に答える
6820 参照

sql-server-2008 - カスケード削除と更新の長所と短所は何ですか?

素朴な質問かもしれませんが、削除と更新は常に連鎖的に行われるべきだと思います。しかし、それには問題があるのか​​、それをすべきでないのはいつなのかを知りたかったのです。カスケード削除を行いたくないケースは今のところ思いつきませんが、確かにあると思います...しかし、更新は常に行う必要がありますか?

削除と更新のカスケードの長所と短所を教えてください。ありがとう。

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

hibernate - カスケードで EntityListener を使用してエンティティを変更する

エンティティ(ユーザーなど)がエンティティのリスト(リストなど)を持つデータベースがあります。要件として、リスト上のエンティティの非正規化された数が必要です。

リストに新しい要素を追加するときは、トランザクション的に、対応するカウンターを増やす必要があります。

私はEntityListenerを使用してそうしようとしました:

エンティティ リスナーは正しく呼び出されており、デバッグ中にエンティティが正しく変更されていることがわかります。ただし、Hibernate は UPDATE クエリをデータベースに送信せず、INSERT クエリのみを送信します (Friendship エンティティに対応)。

EntityListener でさまざまなイベントを試しましたが、うまくいかないようです。

ここで起こっていると思われるのは、エンティティ リスナーがユーザーへの更新によってトリガーされるということです。次に、List だけで構成されるユーザーのすべてのダーティ プロパティを識別します。したがって、ユーザーとは関係なく、フレンドシップを挿入するだけです。次に、操作をフレンドシップにカスケードします。エンティティ リスナーが呼び出され、ユーザーが変更されますが、この時点で Hibernate はユーザーを気にする必要がないと既に判断しているため、ユーザーを更新しません。

この推論は正しいですか?

もしそうなら、どうすればこれを適切に達成できますか?

ありがとう、ブルーノ

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

java - Hibernate: cascade question

In hibernate, there are many information about set cascade to "all, delete" and so on, but I want to know the effect of set cascade to "none"

now I have a class Parent, and it's child-class Child,

and in the file parent.hbm.xml(I omitted other content)

when save the parent, I don't want to cascade update his childs, so I set cascade="none". my question is : I set the cascade is "none", if I add a child#1 to parent, then I save the parent, can hibernate insert a new record to the table parenthaschildsTable, but not cascade the Child?

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

java - OneToMany関係を永続化すると、セット内の最初のオブジェクトのみが永続化されますか?

HibernateとPostgreSQLをいじって、期待どおりに機能させようとしています。

しかし、何らかの理由で、@ OneToMany関係を持つオブジェクトを、セット内の複数のアイテムと永続化しようとすると、最初のアイテムを除くすべてが無視されるように見えます。ローカルインターフェイスとリモートインターフェイスを介してこれを試しましたが、毎回同じ結果が得られます。例外はスローされません。最初のユニットが永続化された後、休止状態が永続化を停止するように見えます。

これが何日も私を避けてきたことを大いに感謝する助けはありません。

Glassfishv3でHibernate3.5とPostgreSQL8.4.4を使用しています。ソース内のすべてのアノテーションはパッケージjavax.persistenceからのものです-文字数制限のためにインポートを削除する必要がありました。

FacadeManagerは、jndiルックアップの手間を省くための単なるユーティリティであり、リモートファサードへのアクセスを簡素化します。

これが試験方法です

-

-

-

-

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

php - 次の mysql カスケード ルールを指定するにはどうすればよいですか

mysqlには、次のものがあります。

したがって、specialDocs は、ユーザーに属することができるドキュメントのサブセットです。

ユーザーが削除されたときに、そのユーザーに属するドキュメントが自動的に削除されるように、カスケード ルールを指定することはできますか? (ユーザーへのポインタ(ID)がテーブル「docs」内の列である場合、これを行うのは簡単だと思います。ただし、上記のような結合テーブルで可能かどうかは不明です...)

よろしくお願いいたします。

0 投票する
3 に答える
58498 参照

java - 休止状態でのカスケードと逆の違いは何ですか?それらは何に使用されますか?

ハイバネートでカスケードとインバースを使用するには? それらを定義する手順/タグは何ですか? それらは互いに関連しており、どのように役立ちますか?

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

java - 外部キーを null に設定する代わりに子レコードを削除する方法

1 対多の関係にある User と一連の Authorities があります。

User.hbm.xml:

ユーザーを削除するときに権限も削除したいのですが、代わりに子テーブルの外部キー (authorities.user_id) が null に設定されています。次に、次のエラーが発生し、ユーザーの削除がロールバックされます。

ただし、authorities.user_id の null への更新はロールバックされません。

親ユーザーを削除するときに権限を削除するにはどうすればよいですか?

編集:権限を明示的に削除refresh()し、ユーザーを呼び出してからユーザーを削除することでこれを機能させましたが、これを行う「正しい」方法を知りたいです。

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

hibernate - Hibernate ConstraintViolationException when cascading delete on @OneToMany

This may seem like a very simple question, but I have been struggling with it for a while. I have two entities Client and User where Client is a parent of User. The entities are annotated as follows:

I need deletion on the client to cascade to the user. This works if the client and user are created in one Hibernate session and the client is deleted in another Hibernate session. However, if I try to delete the client in the same session, then deleted on the user is never issued and I get org.hibernate.exception.ConstraintViolationException.

Does anybody know how to fix this?

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

zend-db - Zend dbカスケードは複数のレベルを削除します

Zend Db カスケードで階層の複数のレベルを削除するにはどうすればよいですか? 例えば:

ディーラー -> 製品 -> 属性

1 つのディーラーを削除すると、属性に至るまで削除する必要がありますが、現在はそうではありません :(

何かご意見は?

0 投票する
3 に答える
729 参照

sql - SQL Server カスケード

ユーザーが「投稿」を投稿し、ユーザーがこれらの投稿に「コメント」できるWebサイトを作成しています。3 つのテーブルを持つデータベースがあります。1 つはユーザー情報、1 つは投稿情報、最後の 1 つはコメント情報です。

ユーザーが削除された場合、すべての投稿とコメントが削除され、ユーザーが投稿の 1 つを削除した場合、関連するすべてのコメントが削除されるようにルールを設定したいと考えています。ただし、これにより「複数の CASCADE パス」が設定されます。

私は解決策を探していて、トリガーに関する情報を見つけました。それらは使用するのに最適なものでしょうか?それらを使用した場合、すべてのCASCADESをトリガーによって実行されるように変更する必要がありますか?

ありがとう

クライベスト