問題タブ [self-referencing-table]

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 に答える
477 参照

ssis - 自己関係を持つテーブルをインポートする方法

私は次の表を持っています:

EntityId-PK
ラベル
ParentEntityId-FK

ParentEntityIdは、同じテーブルのEntityIdに結合されます。親エンティティがまだインポートされていないため、SSISを使用してこのテーブルにデータをインポートする際に問題が発生し、FK制約違反が発生します。私はおそらく明らかな何かを見逃しています。

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

c# - 自己参照エンティティを使用した Entity Framework Code First リポジトリ パターン

ここで説明されているように、.NET 4.5 で EF5 のリポジトリ/作業単位パターンを実装しようとしています: http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc /implementing-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-application . ここで説明されているように、自己参照エンティティを使用しようとするまで、これはすべてうまく機能します: http://www.codeproject.com/Articles/206410/How-to-Configure-a-Self-Referencing-Entity-in-Code. 自己参照エンティティ (FieldType) を含むリポジトリで何かをしようとすると (特定のエンティティを取得する、すべてのエンティティを取得する、エンティティを追加するなど)、UnitOfWork クラスの FieldTypeRepository のゲッターで stackoverflowexception が発生します。心配しないでください。stackoverflow に stackoverflowexception を投稿するという皮肉は、私にはわかりません。EF のリポジトリ パターンに関する SO の記事をかなり読んだことがありますが、それらを自己参照エンティティと組み合わせたものは見たことがありません。

私が試したこと:

  • FieldType エンティティの属性の代わりに FluentAPI を使用 - 変更なし
  • Context オブジェクトを直接使用する - これは完全に機能し、エンティティは DB に追加され、相互に適切に参照されますが、残念ながらリポジトリ パターンの目的に反します。
  • 非自己参照エンティティのリポジトリの使用 - うまく機能します
  • .NET 4.0 および .NET 4.5 に EF5 を使用 - 同じ結果

私のコード:

FieldType.cs

UnitOfWork.cs

Context.cs

リポジトリ.cs

SecurityController.cs (または実際には任意のクラス)

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

python - Django の逆自己参照外部キー

ばかげた質問で申し訳ありませんが、私は Django の初心者で、答えが見つかりません。

自己参照フィールドを持つ Order モデルがあります。

Order があり、そのソースを知りたい場合はこれで問題ありませんが、Order の「子」のリスト、つまり、この Order がソースである Order のリストも取得する必要があります。これは s を介して行う必要がありますか、filter()それとも Django のような素敵な方法がありますか?

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

hibernate - 追加の列を持つ Hibernate の自己参照エンティティ

これらのテーブルを Hibernate でマップしたい:

これをマッピングする正しい方法について疑問に思います。私はこれについて考えました:

を持つユーザーエンティティ

との友好団体

しかし、これが上記のスキーマと一致するとは思いません (列名だけでなく、tbl カウントでも、スキーマには 2 が必要ですが、これには 3 つのテーブルが必要で、2 つのエンティティと、ManyToMany 関係マッピング テーブル用に 1 つ必要です)。問題は、これを2回としてマッピングできないことです

ユーザーからの友情をリダイレクトできないため、次のようなものを追加できないため

MappedBy=? を指定できないため、ユーザーに 引数なので、関係は追加のテーブルにマップされます...

しかし、私はそれを双方向に保ちたいです。

この問題の良い解決策はありますか?

また、ユーザーがフレンドシップ テーブルでどのように順序付けられているかは問題ではないため、(user1, user2) = (user2, user1) となります。これは、同等の equals()-Implementation を使用して idClass/EmbeddedId で表現するのが最適だと思いますよね?

編集: from<->to、owner<->owned のように 2 つの要素に対して何らかの順序を定義すると、これをアーカイブすることは可能であるように思われますが、この関係に自然な順序は見られず、したくありません。この技術的な問題のためだけにいくつかの人為的なものを定義します...

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

sql - 構造が同じでデータが類似しているテーブル

これは本当にベストプラクティスに関する質問です。
私はいくつかの測定値 (HR と RR と呼びます) を収集し、これらの測定値の平均値を計算するシステムを開発しています。現在、ユーザー インターフェイスではこれらの平均値にのみ関心がありますが、後で詳細なデータ分析を行うには、すべての個々の測定値 (matlab にエクスポートするため) とすべての平均計算 (聞かないでください - ユーザー) が必要です。必要に応じて、個々の測定値を保存し、後で平均を計算します)。

平均計算などの詳細は次のとおりです。
- HR: 500 ~ 1500 ミリ秒 (可変) ごとに測定値を取得します。4 ~ 12 回の読み取りに基づいて平均を計算します (読み取り間の時間によって異なります)。
- RR: 3 ~ 17 秒 (可変) ごとに測定値を取得します。2 ~ 3 回の読み取りに基づいて平均を計算します (読み取り間の時間によって異なります)。

両方について保存します:
- 平均値 (10 進数) と、平均計算に使用される読み取り値からの最初の読み取りのタイムスタンプ。
- 個々の読み値 (10 進数) と、読み値が取得されたときのタイムスタンプ。

ご覧のとおり、データは平均計算と個々の測定値で同じです。
HR/RR と同じ-データは同じで、次のように表すことができます
。読書 |
- - - - - - - - - -
| タイムスタンプ |
| | 値 |
- - - - - - - - - -

異なる時間間隔などでデータを計算するため、HR + RR をデータベースに単一の行として保存することはできず、個別の行またはテーブルが必要です。
質問は次のとおり
です。それとも、特定の行が HR か RR かを示す列を使用して、別々の行として同じテーブルに格納する方がよいでしょうか?
2. 個々の測定値ごとに個別の表を作成する方が良いですか? それとも、個々の読み取り値が同じテーブルの行を参照し、それが使用された平均計算を使用する自己参照テーブルを作成する方がよいでしょうか?

私は DB 設計が得意ではなく、その状況でどのようなベスト プラクティスが使用されるかわかりません。
また、MongoDB (SQL データベースではなく、プロジェクトが C# ベースであるため、おそらく MSSQL) を使用することも検討していました。これにより、平均計算などを含むドキュメントに個々の測定値の配列を埋め込むことができるため、おそらく作業が楽になるでしょう。 Mongoへの書き込みが非常に高速であることを知っています...

ポインタはありますか?ありがとう。