SQL适配器填充 - 重复列

时间:2014-03-01 03:30:42

标签: c#

我正在使用SqlDataAdapter.Fill从具有2列(如Column和COLUMN)的查询中检索数据。不幸的是,第二列作为Column_1插入到表中。我已经运行了这个快速测试,似乎数据表能够区分大小写,但adapter.fill没有提供给我。有没有办法强制adapter.fill这样做?

void Main()
{
    DataTable table = new DataTable();
    table.Columns.Add("Number", typeof(int));
    table.Columns.Add("NUMBER", typeof(int));


    table.Rows.Add(123, 123);

    foreach(var column in table.Columns)
    {
        Console.WriteLine(column);
    }
}

1 个答案:

答案 0 :(得分:0)

根据.NET 2.0 - 4.5中DataColumnCollection的MSDN documentation,Add方法不区分大小写,并且假设在此方案中抛出DuplicateNameException。

来自DuplicateNameException的例外部分:

  

该集合已有一个具有指定名称的列。 (该   比较不区分大小写。)

我不确定为什么它不会抛出记录的异常,但是文档与您看到的SqlDataAdapter行为相结合会表明它不适合您正在尝试的内容。