2011-04-04 128 views
0

我在.NET中编写数据库应用程序。我的应用程序使用LINQ从SQL Server读取数据。 然后它将数据保存在DataSet中(在表格中)。当用户在应用程序中执行某些操作时,数据将保存在DataSet中(在表格中)。在一些交易中,用户可以将数据保存在数据库中(数据从数据集发送到数据库)。但存在一个问题:将表中的数据保存到数据库

例如,我从数据库中读取数据集中的2个表:Bank Account And IncomeTransactions。

  • BankAccount保存我所有的银行账户。
  • IncomeTransaction是救了我的收入,我的帐户
    • 这就是为什么我在IncomeTransaction表(IDACCOUNT))的外键。

然后我一个新的帐户添加到我的帐户表(没有数据库)。之后,我在我的IncomeTransaction表中添加一个新的IncomeTransaction。添加的IncomeTransaction的IDACCOUNT是新帐户的ID。

一切到这一步都可以。但是当我尝试通过LINQ将数据保存到数据库时,出现以下错误:

The INSERT statement conflicted with the FOREIGN KEY constraint "FK_Income_Accounts". The conflict occurred in database "HouseBudget", table "dbo.Accounts", column 'IDAccount'. The statement has been terminated.

如何解决此错误?

回答

0

在表dbo.Accounts中添加列IDAccount的数据以及您在创建新帐户时所做的更改。 (新增收入交易的IDACCOUNT是新帐户的ID。)

+0

但是我想使用保存按钮对我的数据集表进行所有修改 – 2011-04-04 08:47:50