• 締切済み

c#webアプリケーソン 制約を有効にできませんでした。 というエラー

ある企業で半年以上安定して作動したwebアプリケーションが今朝急にエラーが出て、動けなくなりました。特に変な操作や、サーバーの変更はなかったのです。 エラーメッセジーは「制約と有効にできませんでした。行に入力できるのは、Null以外の値、一意な値、あるいは外部キーですが、この制約の違反が1つ以上の行で発生しています」となります。 いろいろ調査したが、「DataSetのEnforceConstraintsプロパティをOFFにすれば」というような答えが多いですが、今回の状況と違うと思います。 このエラーを発生するほかの原因が知っていたら、教えていただけませんか。小さいアドバイスでも助かります。よろしくお願いいたします。

みんなの回答

  • ape5
  • ベストアンサー率57% (85/148)
回答No.1

初心者の意見ですが少しばかり。 質問文を拝見してみて、エラーを出しているのがDataSetであるということでよいのでしょうか? そうであるならば、エラーメッセージを考えるに制約違反であるということだと思います。おそらく、DataSetのEnforceConstraintsをOFFにすればエラーはなくなるとは思います。そこで問題になるのがDataSetの制約の役目です。DataSetで制約をかけてなくてもDB側で制約がかかっていれば問題はない。ただし、INSERTするときにエラーが生じる可能性がでます。DataSetに制約を課す理由にDBに登録する時にエラーが出ないようにする為の処理のための一つだと思っています。 このWEBアプリケーションを作成した人がどういった意図でDataSetの制約をつけたのかがわかれば、OFFにできるかどうかが分かると思います。

corefine
質問者

お礼

ご回答ありがとうございました。

関連するQ&A

専門家に質問してみよう