You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#向DataSet表添加行遇非空约束错误求解决

C# DataSet添加非空主键行报错解决

我在C#中创建了一个包含三张表的DataSet,目前仅完成了列定义,正尝试添加行来填充表数据。其中第一张表为destinationTable,需要添加行的两列既是主键又不允许为空。但添加行时控制台会抛出如下错误:

ERRORE: Column 'CONFIG_NAME' does not allow nulls.

我的代码如下:

var newRow = destinationTable.NewRow();
newRow["APP_CODE"] = mAppCode;
destinationTable.Rows.Add(newRow);

var newRow2 = destinationTable.NewRow();
newRow2["CONFIG_NAME"] = "pippo";
destinationTable.Rows.Add(newRow2);

尝试给其他现有列添加行时也会出现相同错误。我试过同事给出的多种方案,还尝试创建临时空DataSet并在其中添加列后复制到当前DataSet,但都未能解决问题。

**编辑补充:**实际问题与DataSet填充的其他环节有关,但各位用户给出的「添加行时需同时为两个非空主键列赋值」的回答在本场景下是正确的。

正确的解决方式

因为APP_CODE和CONFIG_NAME都是非空主键列,所以每添加一行时必须同时给这两个列赋值,不能只填充其中一个。修正后的代码示例:

var newRow = destinationTable.NewRow();
newRow["APP_CODE"] = mAppCode;
newRow["CONFIG_NAME"] = "pippo"; // 必须同时为该非空主键列赋值
destinationTable.Rows.Add(newRow);

内容的提问来源于stack exchange,提问作者swdev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 01:21:03