C# DataTable.Select()的简单测试在应该的时候没有得到任何结果
我正在尝试测试来自现有Sql Server数据库的数据集上的不同查询。我需要能够抓住它的id列为我正在做的项目的一行。然而,看似简单的查询不会得到任何结果C# DataTable.Select()的简单测试在应该的时候没有得到任何结果,c#,visual-studio,C#,Visual Studio,我正在尝试测试来自现有Sql Server数据库的数据集上的不同查询。我需要能够抓住它的id列为我正在做的项目的一行。然而,看似简单的查询不会得到任何结果 DataSet prodspdata = new prodspDataSet(); DataRow[] load; load = prodspdata.Tables["TripNumber"].Select("[ctripnumber] = '21605178'"); Console.WriteLine(load.Length); Co
DataSet prodspdata = new prodspDataSet();
DataRow[] load;
load = prodspdata.Tables["TripNumber"].Select("[ctripnumber] = '21605178'");
Console.WriteLine(load.Length);
Console.ReadLine();
load的输出。长度为0。我从文档中了解到,load应该是Select查询返回的行数组。我知道这个结果是通过查看数据得到的,所以我希望load.length为1
我在Sql Server Management Studio中测试了一个查询,以确保没有遗漏任何内容:
SELECT * FROM TripNumber WHERE ctripnumber = '21605178'
这将按预期返回1行
我的Select查询是否错误?我是C的新手,我测试错了吗?我只需要知道load是否包含任何结果,这样我就知道我的查询按预期工作
编辑:看来我的数据表没有行
DataTable loadTable;
loadTable = prodspdata.Tables["TripNumber"];
Console.WriteLine(loadTable.Rows.Count);
Console.ReadLine();
这将返回0行,而loadTable.Columns.Count将返回133行
我是否遗漏了一个步骤,可能与TableAdapter有关?不要在筛选中使用方括号
load = prodspdata.Tables["TripNumber"].Select("ctripnumber = '21605178'");
还请记住,可以使用Visual Studio调试器查看数据集和数据表的内容。不要在筛选中使用方括号
load = prodspdata.Tables["TripNumber"].Select("ctripnumber = '21605178'");
还请记住,您可以使用Visual Studio调试器查看数据集和数据表的内容。我实际上没有用任何东西填充数据集,这是导致问题的原因。我严重忽视了桌子。我添加的代码是:
prodspDataSetTableAdapters.TripNumberTableAdapter ta = new prodspDataSetTableAdapters.TripNumberTableAdapter();
DataTable loadTable = ta.GetData();
因此,如果不实例化TableAdapter,也不使用基于TableAdapter设置的数据填充表,则基本上会得到一个包含表、列和无值的空数据库模式。新手的错误。我实际上没有用任何东西填充我的数据集,这导致了问题。我严重忽视了桌子。我添加的代码是:
prodspDataSetTableAdapters.TripNumberTableAdapter ta = new prodspDataSetTableAdapters.TripNumberTableAdapter();
DataTable loadTable = ta.GetData();
因此,如果不实例化TableAdapter,也不使用基于TableAdapter设置的数据填充表,则基本上会得到一个包含表、列和无值的空数据库模式。新手犯了错误。如果您显示的代码prodspDataSet@Juan是否指定prodspDataSet.Designer.cs代码?共有8400行。当我在Visual Studio中通过项目>添加新数据源将其作为数据源添加时,它是自动生成的。从调试器中浏览数据集时,是否有行@Juan我发现了我的错误,但要回答您的问题:当我没有首先使用TableAdapter进行任何操作时,在调试器中探索它时没有行。很高兴听到这个消息!如果您显示的代码prodspDataSet@Juan是否指定prodspDataSet.Designer.cs代码?共有8400行。当我在Visual Studio中通过项目>添加新数据源将其作为数据源添加时,它是自动生成的。从调试器中浏览数据集时,是否有行@Juan我发现了我的错误,但要回答您的问题:当我没有首先使用TableAdapter进行任何操作时,在调试器中探索它时没有行。很高兴听到这个消息!我尝试了带括号和不带括号的列名,结果相同。我尝试了带括号和不带括号的列名,结果相同。