C# TableAdapter 和 DataSet 更新多个表

发布于 2024-12-26 13:33:59 字数 843 浏览 1 评论 0原文

我是 C# 新手,需要一些帮助。

在此处输入图像描述

我只想通过下面的代码更新会话表中的行。

        dbDataSet db = new dbDataSet();
        SessionTableAdapter sessionTableAdapter = new SessionTableAdapter();
        sessionTableAdapter.Fill(db.Session);
        var session = db.Session.Where(s => s.idSession.Equals(new Guid("{0F0B0E1A-950E-4BCE-9C68-6D1387EDAC90}"))).SingleOrDefault();
        session.endTime = DateTime.Now;
        sessionTableAdapter.Update(db.Session);

我在“sessionTableAdapter.Update(db.Session)”处收到错误

An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll

Additional information: The record cannot be deleted or changed because table 'PaidLog' includes related records.

如何修复此错误?

I'm new in C# and I need some help.

enter image description here

I just want to update row in Session table by code below.

        dbDataSet db = new dbDataSet();
        SessionTableAdapter sessionTableAdapter = new SessionTableAdapter();
        sessionTableAdapter.Fill(db.Session);
        var session = db.Session.Where(s => s.idSession.Equals(new Guid("{0F0B0E1A-950E-4BCE-9C68-6D1387EDAC90}"))).SingleOrDefault();
        session.endTime = DateTime.Now;
        sessionTableAdapter.Update(db.Session);

I got an error at "sessionTableAdapter.Update(db.Session)"

An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll

Additional information: The record cannot be deleted or changed because table 'PaidLog' includes related records.

How to fix this error ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

追星践月 2025-01-02 13:33:59

错误消息说明了一切。 Session表与PaidLog有外键关系。您必须首先更新该表中的子行。

请参阅这篇MSDN 上的文章,了解“更新使用 TableAdapter 的数据集中的两个相关表” 部分

或者您可能想要使用 TableAdapterManager

The error message says it all. Session table has foreign key relation with PaidLog. You will have to update child rows from this table first.

See this article on MSDN for more details in the "Updating Two Related Tables in a Dataset with a TableAdapter" section

Or you might want to use TableAdapterManager

月寒剑心 2025-01-02 13:33:59

解决了!

起初,我只勾选“强制引用完整性”。

但我尝试勾选级联更新相关字段并且它有效!

我不知道为什么它有效。

有谁知道这件事的原因吗?

顺便说一句,谢谢马希普。

在此处输入图像描述

Solved !

At first that I just only tick Enforce Referential Integrity.

But I try to tick Cascade Update Related Fields and It's works !

I don't know why it work.

Anyone know the reason about this thing?

By the way, thanks to Maheep.

enter image description here

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文