問題タブ [foreign-keys]

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

sql - 外部キーを持つテーブル(SQLサーバー)のレコードを変更しますか?

テーブルに外部キーがあるレコードを編集するより速い方法があるかどうか誰かが知っていますか(SQLサーバーで)..私は説明します..私は独自のIDを持っているが外部キーを使用して一緒にリンクされている約5つのテーブルを持っています..。。

したがって、外部キー(私の場合は契約番号)を変更する必要がありましたが、各レコードを新しいレコードにコピーして、そのように編集する必要がありました...

契約番号を編集しようとすると、関連付けられているという標準エラーが発生し、外部キーなどに違反します。

確かにもっと良い方法があるに違いありませんか?

何か案は?

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

asp.net - Entity Frameworkを使用してGridViewの外部キー値でソートしますか?

GridView のビルトイン Entity Framework での並べ替えを使用すると、外部キーの値を表示できます。例えば...

...しかし、ヘッダーをクリックしてグリッド内のアイテムを並べ替えると、リスト リストを Category.Name で並べ替えるにはどうすればよいですか?

私は文字列「Category.Name」しか持っていないので、これを行うことはできません:

だから私はリフレクションを試しました...

...これは機能しません。例外はスローされませんが、Category.Name で並べ替えられません。

何か案は?

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

sql-server - テーブル 't_name' に FOREIGN KEY 制約 'c_name' を導入すると、サイクルまたは複数のカスケード パスが発生する可能性があります

Lesson私は:
列: ...と呼ばれるデータベーステーブルを持っています[LessonID, LessonNumber, Description]...さらにいくつかの他の列

と呼ばれる別のテーブルがありますLesson_ScoreBasedSelection
列: [LessonID,NextLessonID_1,NextLessonID_2,NextLessonID_3]

レッスンが完了すると、そのレッスン ID がLesson_ScoreBasedSelectionテーブルで検索され、次の 3 つの可能なレッスンが取得されます。各レッスンは、特定の範囲のスコアに関連付けられています。スコアが 0 ~ 33 の場合、NextLessonID_1 に格納されている LessonID が使用されます。スコアが 34 ~ 66 の場合は、NextLessonID_2 に格納されている LessonID が使用されます。

テーブル内のすべての値が Lesson テーブルの LessonID 列にエントリを持っている必要があるLesson_ScoreBasedSelectionため、lesson テーブルの LessonID 列を参照する外部キーを使用して、テーブル内のすべての列を制約したいと考えています。Lesson_ScoreBasedSelectionまた、カスケード更新をオンにして、Lesson テーブルで LessonID が変更された場合に、テーブル内のすべての参照Lesson_ScoreBasedSelectionが更新されるようにします。

この特定のカスケード更新は非常に単純な一方向の更新のようにLesson_ScoreBasedSelection見えますが、Lesson テーブルの LessonID フィールドを参照するテーブルの各フィールドに外部キー制約を適用しようとすると、次のエラーが発生します。

テーブル ' ' に FOREIGN KEY 制約 'c_name' を導入Lesson_ScoreBasedSelectionすると、サイクルまたは複数のカスケード パスが発生する可能性があります。

このエラーが発生する理由、または説明した制約とカスケード更新を実現する方法を誰かが説明できますか?

0 投票する
8 に答える
179643 参照

mysql - 特定のtable.columnを参照し、それらの外部キーの値を持つ外部キーを持つすべてのテーブルを見つけるにはどうすればよいですか?

主キーが他のいくつかのテーブルで外部キーとして参照されているテーブルがあります。例えば:

さて、テーブルYやZのようなXへの外部キーを含むデータベース内のテーブルの数がわかりません。返すために使用できるSQLクエリはありますか?

  1. Xへの外部キーを持つテーブルのリスト
  2. そして、それらのテーブルのどれが実際に外部キーに値を持っているか
0 投票する
7 に答える
49684 参照

mysql - MySql エラー 150 - 外部キー

次の 2 つのクエリを実行すると (絶対に必要なものまで削除しました):

次のエラーが表示されます: ERROR 1005 (HY000): テーブル './test/bar.frm' を作成できません (errno: 150)

**** は私のエラーですか? これを30分間見つめている間、私は彼を見つけられませんでした。

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

.net-3.5 - LINQ to Entities でオブジェクトの外部キー値を更新するにはどうすればよいですか?

次のテーブルがあるとします。

これらの状況で、データベース内の果物の名前とそのステータスの両方を更新するにはどうすればよいですか?:

  1. 以前の L2E コールから来たフルーツの一部を更新する
  2. FruitID に対応する整数が与えられます (つまり、最初から完全な Fruit オブジェクトが手元にありません)。

VB または C# で問題ありません。

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

sql - MySQL の外部キーの変更タイプ

私は MySQL を使用しており、他の多くのテーブルで外部キーとして使用されるインデックスを持つテーブルがあります。インデックスのデータ型を (符号付きから符号なし整数に) 変更したいのですが、これを行う最善の方法は何ですか?

インデックス フィールドのデータ型を変更しようとしましたが、他のテーブルの外部キーとして使用されているため失敗します。外部キーの 1 つでデータ型を変更しようとしましたが、インデックスのデータ型と一致しなかったため失敗しました。

すべての外部キー制約を手動で削除し、データ型を変更して制約を追加し直すことができると思いますが、このインデックスを外部キーとして使用するテーブルがたくさんあるため、これは大変な作業になります。変更中に外部キー制約を一時的にオフにする方法はありますか? また、インデックスを外部キーとして参照しているすべてのフィールドのリストを取得する方法はありますか?

更新: 外部キーのチェックをオフにした後、1 つの外部キーを変更しようとしましたが、チェックをオフにしていないようです:

エラーは次のとおりです。

インデックス テーブルの定義:

そして、それを指す外部キーを持つテーブル:

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

sql-server-2000 - SQL Server 2000 ですべての外部キー制約を取得するためのクエリ

すべての外部キーのリストを取得するには、SQL Server 2000 のクエリが必要です。

特に、特定の列を指すすべての外部キー。

このクエリの書き方

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

vb.net - DataGridView と DataSource: 外部キーでリンクされたフィールドを簡単に表示する方法はありますか?

VB.NET で 3 層の Windows Forms DB アプリケーションを使用しています。私はVS2005を使用しています。

DataGridView のテーブルにレコードを表示したいと思います。DB クラスと通信するビジネス クラスに DataSource をバインドすることで、レコードをそのまま表示できます。

"Asset" は私のビジネス クラスで、"DB_Asset" は DB にクエリを実行して assetList を返す DB クラスです。

アセットには、次のようなメンバーがあります。

m_ID_Asset には、DB 内の Asset テーブルの主キーが含まれ、m_XXXXXXXXXID 形式のその他すべてには、DB 内の別のテーブルへの外部キーが含まれます。

したがって、基本的に私が今得ているのは、たくさんの数字を持つ行です。それはまさに Assets テーブルにあるものです:

私が知りたいのは、これらすべての外部キーにリンクしたテキスト フィールドを表示する簡単な方法があるかどうかです。

ここで経験のある人は何かトリックを持っていますか?

前もって感謝します!

0 投票する
11 に答える
375746 参照

mysql - MySQL いくつかの外部キーを削除する

主キーが他のいくつかのテーブルで使用され、他のテーブルへのいくつかの外部キーを持つテーブルがあります。

問題は、外部キー列 (つまり、locationIDX) の 1 つを削除しようとすると、エラーが発生することです。

「エラー 1025 (HY000): 名前変更エラー」

このエラーを発生させずに上記の割り当てテーブルの列を削除するにはどうすればよいですか?