2 つのテーブルの単純な結合を行い、いくつかの列を返す SQL Server ビューがあります。Management Studio でこのビューを実行しても問題は発生せず、期待されるデータ (2 行) が返されます。
このビューを Visual Studio の TableAdapter のデータ ソースとして使用すると、「制約を有効にできませんでした。1 つまたは複数の行に、null 以外、一意、または外部キーの制約に違反する値が含まれています。」という ConstraintException が発生します。
tableAdapter.Fill( dataSet.vwMyView ) を呼び出す前に EnforceConstraints = false を使用したので、この問題の原因に関する詳細情報を得ることができました。列「MyColumn」には一意でなければならないという制約がありますが、値 4 (ID) は既に存在するというメッセージが表示されました (はい、この ID を持つ行が 2 つあります)。
これは、ビューで結合する 2 つのテーブルの 1 つで一意 (および主キー) であることを理解していますが、DataGridView でエラーが発生する理由がわかりません。
- データだけを表示したい
- Management Studio のまったく同じビューで同じ選択を実行しても、エラーは発生しません。
何故ですか?ID値を表示する必要がありますが、実際にそのエラーが発生する理由もわかりません。
前もって感謝します &
よろしくお願いします
ゴルグセネッガー