質問

現在のアプリケーションでは、かなり標準的なテーブルセットアップを使用しています。 。ネット XSD DataSet そして TableAdapter 特徴。私の contracts テーブルは、いくつかの標準的な契約情報と、 primary department. 。このコラムは、 外部キー わたしの Departments テーブル、基本的なものを保存する場所 department name, id, notes. 。これはすべて私の環境でセットアップされ、機能しています SQLサーバー.

XSD ツールを使用すると、両方のテーブルを一度にドラッグでき、これら 2 つのテーブル間にある外部キーが自動的に検出/作成されます。これは、メイン ページで契約データを表示しているときにうまく機能します。

ただし、管理ページにアクセスして部門データを変更する場合は、通常次のような操作を行います。

Dim dtDepartment As New DepartmentDataTable()
Dim taDepartment As New DepartmentTableAdapter()

taDepartment.Fill(dtDepartment)

ただし、この時点で、ここに壊れた外部キー参照があるという趣旨の例外がスローされます。 Contract DataTable 満たされました。

この問題はどうすれば解決できますか?XSD から外部キーを削除するだけで正常に動作することはわかっていますが、そこで追加の整合性チェックが行われ、XSD スキーマがデータベース内の SQL スキーマと一致するのは便利です。

役に立ちましたか?

解決

DataSet の Check-constraints をオフにしてみるか (プロパティにあります)、そのリレーションシップのプロパティを変更して、キーを単純な参照に変更してみてください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top