我有一个数据表,用于批量复制到 SQL 服务器数据库中:我将其列定义如下:
dt.Columns.Add("BaseID", typeof(Int32));
dt.Columns.Add("ContractID", typeof(DateTime));
dt.Columns.Add("TermID",typeof(Int32));
dt.Columns.Add("Price",typeof(Decimal));
dt.Columns.Add("PeakType",typeof(String));
现在,PeakType 列实际上可以是一个字符串,也可以为空。因此,当我向数据表中添加行时,我会这样做。
DataRow row = dt.NewRow();
row["BaseID"] = baseID;
row["ContractDate"] = contractDate;
row["TermID"] = termID;
row["Price"] = price;
row["PeakType"] = peakType; //How would I assign If I want to assign DBNull?
如果 peakType 为 null,我如何指定 DBNull.Value 以便我的批量复制可以在 SQL Server 表的列中正确插入一个 null
最佳答案
使用空合并运算符
。
row["PeakType"] = peakType ?? DBNull.Value;
如果 peakType
为 null,它将使用正确的 DB null 值。
关于c# - 在大容量复制之前将 DBNull 值插入 DataTable 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22517270/