сохранение данных из таблиц в базу данных - PullRequest
0 голосов
/ 04 апреля 2011

Я пишу приложение базы данных в .NET. Мое приложение читает данные из SQL Server с помощью LINQ. Затем он сохраняет мои данные в DataSet (в таблицах). Когда пользователь что-то делает в приложении, данные сохраняются в DataSet (в таблицах). После некоторых транзакций пользователь может сохранить данные в базе данных (данные отправляются из набора данных в базу данных). Но есть проблема:

Например, у меня есть две таблицы в наборе данных, которые считываются из базы данных: банковский счет и транзакции дохода.

  • BankAccount сохраняет все мои банковские счета.
  • IncomeTransaction для сохранения моих доходов на моих счетах
    • , поэтому у меня есть внешний ключ в таблице IncomeTransaction (IDACCOUNT)).

Затем я добавляю новую учетную запись в свою таблицу учетных записей (не в базу данных). После этого я добавляю новую IncomeTransaction в свою таблицу IncomeTransaction. IDACCOUNT добавленной IncomeTransaction является идентификатором новой учетной записи.

Все до этого шага в порядке. Но когда я пытаюсь сохранить данные в базе данных через LINQ, я получаю следующую ошибку:

Оператор INSERT конфликтовал с ограничением FOREIGN KEY "FK_Income_Accounts". Конфликт произошел в базе данных «HouseBudget», таблице «dbo.Accounts», столбце «IDAccount». Заявление было прекращено.

Как я могу решить эту ошибку?

1 Ответ

0 голосов
/ 04 апреля 2011

добавить данные для столбца IDAccount в таблицу dbo.Accounts вместе с изменениями, которые вы делаете при создании новой учетной записи. (IDACCOUNT добавленной доходной транзакции - это идентификатор новой учетной записи.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...