問題タブ [cascading-deletes]
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.
hibernate - 含まれる @OneToMany メンバーの削除順序
すべての @OneToMany メンバーに @OnDelete アノテーションがあります。親オブジェクトが削除されるとき、これらのオブジェクトが削除される順序はどうなりますか。オブジェクトが宣言されている順序であると想定しても安全ですか。
entity-framework - EF4 fluent API を使用して削除をリンク テーブルにカスケードするにはどうすればよいですか?
リンク テーブルによって関連付けられている既存の (MSSQL 2008 R2) データベースに 2 つのテーブルがあります。
2 つのテーブルは、「プラン」と「ヒント」です。リンク テーブルは「PlanTipLinks」です。
プランには多くのヒントを含めることができ、ヒントは複数のプランに関連付けることができます (つまり、多対多の関係です)。アプリケーションでは、「Plan.Tips」の関係のみを気にします。Tip.Plans の逆関係は必要ありません。
リンク テーブル内の外部キー参照を null にすることはできません。
この関係をマッピングするために、次の流暢な API コードを使用しています。
これにより、テーブルに正しいエントリが作成されます。問題は、プランを削除すると、PlanTipLinks テーブルで外部キー例外が発生することです。
おそらく、プランが削除されたときに PlanTipLinks テーブルにカスケードするように指示する必要がありますが、その方法がわかりません。HasMany/WithMany メソッドを使用して WillCascadeOnDelete メソッドを呼び出すことができないようです。
ここで何が欠けていますか?
entity-framework-4 - Entity Framework が CSDL (概念モデル) の OnDelete を適切に更新しないのはなぜですか?
最近、データベース内のいくつかのテーブルを を使用するようOnDelete=Cascade
に更新しましたが、edmx ファイルを更新しようとしたときに、が適切に更新されUpdate model from database
ていないことに気付きました。OnDelete
少し検索した後、http://msdn.microsoft.com/en-us/library/bb738695.aspxから次の「ヒント」を見つけました。
カスケード削除ルールを使用してデータベースを更新し、データベースから既存のモデルを更新すると、Entity Framework はカスケード削除ルールを SSDL に追加しますが、CSDL には追加しません。手動で追加する必要があります。概念モデルでカスケード削除規則を指定するには、エンティティ デザイナー画面で関連付けを選択します。次に、[プロパティ] ウィンドウで、OnDelete プロパティの [カスケード] を選択します。
私の質問は、なぜこれが当てはまるのですか?約 15 個のテーブルを更新しましたが、各関係を見つけて、edmx
ファイルで同じ更新を行う必要があります...もっと簡単で効率的な方法はありますか?
hibernate - JPA orphanRemoval=trueはONDELETECASCADEDML句とどのように異なりますか
JPA2.0orphanRemoval
属性について少し混乱しています。
ON DELETE CASCADE
JPAプロバイダーのDB生成ツールを使用して、特定の関係を持つ基盤となるデータベースDDLを作成するときに、これが必要であることがわかると思います。
ただし、DBが存在し、すでにON DELETE CASCADE
関係にある場合、これは削除を適切にカスケードするのに十分ではありませんか?さらに何orphanRemoval
をしますか?
乾杯
nhibernate - 多対多とカスケード: エンティティの削除に関する問題
次の 2 つのエンティティとそのマッピングがあります。
私はこれらの2つの単体テストを持っています:
最初のアサートは成功しますが、ビデオ フォルダーが削除される 2 番目の最初のアサートは成功しませんが、残りのビデオ カテゴリにはまだ関連付けられています。
2 番目のテストの SQL 出力は次のとおりです。
マッピングを変更し、VideoCategoryMap の Cascade.AllDeleteOrphan を変更すると、2 番目のテストは成功しますが、孤立したビデオ フォルダーが削除されないため、最初のテストは失敗します。
両方のテストを成功させるにはどうすればよいですか?
前もって感謝します
マイク
grails - domain.delete()を使用しない場合、Grailsは削除をカスケードしますか?
Grailsサイトから:http ://www.grails.org/doc/1.0.x/guide/5.%20Object%20Relational%20Mapping%20(GORM).html
次にdelete()
、Airportのインスタンスを呼び出すと、関連するすべてのFlightオブジェクトが削除されます(空港に属しているため)。を使用して空港を削除した場合executeUpdate
でも、フライトが削除されることを期待できますか?
ありがとうございました
sql - CASCADE DELETE を有効にするためにテーブルを編集するにはどうすればよいですか?
ユーザーを表すテーブルがあります。ユーザーが削除されると、次のようになります。
DELETE ステートメントが REFERENCE 制約と矛盾しています
どうやら、CASCADE DELETE
SQL Server で想像したほど簡単ではなく、オプションをテーブルに追加する必要があります。
CASCADE DELETE
問題は、オプションを追加する方法がわかりません。
私が使用している: SQL Server 2008。これを行う方法はありますか?
sql - カスケード削除のない外部キー
私は2つのテーブルを持っています:
と
チャレンジ テーブルに challengeID = 1 の行が 1 つあり、UserChallenge テーブルに challengeID = 1 の行が 1 つあるとします。
チャレンジから行を削除すると、UserChallenge テーブルはどうなりますか? ON DELETE CASCADE
と一緒に使ってもUserChallenge.challengeID
いいですか?
ありがとう。
mysql - 'ONDELETECASCADE'が機能しません
、、の3つのテーブルがlt_hdefaults
ありlt_hperiods
ますlt_hrules
。にはlt_hdefaults
、特定の年のプロパティの行が1つあります。表ではlt_hperiods
、複数の期間が存在する可能性があり、それらを季節と呼びます。表ではlt_hrules
、期間ごとに複数のルールが存在する可能性があります。さて、私がうまくいかなかったこと:ユーザーがからレコードを削除するとき、lt_hdefaults
削除されたレコードに関連する他のデータlt_hperiods
をlt_hrules
テーブルから削除する必要があります。私はこれを使用してこれを達成しようとしています
ただし、動作しません。長く見えることは知っていますが、それほど複雑ではありません。誰かが何か考えを持っているなら、私はそれをいただければ幸いです。私はmysqlの使い方を知っていますが、その専門家ではありません。どうもありがとう。
以下のサンプル:
hibernate - @ManyToManyアノテーションを使用して結合テーブルからカスケード削除
こんにちは、エンティティのマッピングで問題が発生しました。私はJPA2とHibernateの実装を使用しています。@ManyToManyアノテーション付きのテーブルを取得しました
http://img204.imageshack.us/img204/7558/przykladd.png
私はそれをマッピングしました:
ここで、Employeeからレコードを削除するときに、テーブルproj_empからカスケード削除したいのですが、テーブルProjectからは何も削除できません。
それを取得するための最良の方法は何ですか?
ありがとうDawid