C# SqlDataAdapter 不填充数据集
Posted
技术标签:
【中文标题】C# SqlDataAdapter 不填充数据集【英文标题】:C# SqlDataAdapter not populating DataSet 【发布时间】:2010-04-20 17:16:12 【问题描述】:我已经搜索了网络并搜索了网络,但并没有完全找到我可能遇到的问题。我目前在获取 SqlDataAdapter 来填充 DataSet 时遇到问题。我正在运行 Visual Studio 2008,并且查询被发送到 SqlServer 2008 的本地实例。如果我运行查询 SqlServer,它会返回结果。 代码如下:
string theQuery = "select Password from Employees where employee_ID = '@EmplID'";
SqlDataAdapter theDataAdapter = new SqlDataAdapter();
theDataAdapter.SelectCommand = new SqlCommand(theQuery, conn);
theDataAdapter.SelectCommand.Parameters.Add("@EmplID", SqlDbType.VarChar).Value = "EmployeeName";
theDataAdapter.Fill(theSet);
读取数据集的代码:
foreach (DataRow theRow in theSet.Tables[0].Rows)
//process row info
如果我可以提供更多信息,请告诉我。
【问题讨论】:
【参考方案1】:您需要查询“从员工中选择密码,其中employee_ID = @EmplID”(参数周围没有单引号)。
【讨论】:
就是这样,非常感谢。我会尽快接受答案。 第二组眼睛就足够了。有时他们甚至不必成为聪明头脑的一部分;-)【参考方案2】:如果您运行此查询,它会返回结果吗?
select Password from Employees where employee_ID = 'EmployeeName'
我的猜测是“EmployeeName”应该是一些传入的值...... 如果您使用参数,@EmpID 在查询中不应有单引号。
【讨论】:
以上是关于C# SqlDataAdapter 不填充数据集的主要内容,如果未能解决你的问题,请参考以下文章
带有表类型参数的存储过程返回数据但 SqlDataAdapter 不会填充
SQLDataAdapter 用主键填充数据表会产生错误并退出子
C# SqlDataAdapter.Fill 在传递数据表参数时给出关于数据转换的错误
使用 sqldataadapter.fill 刷新数据 - 看不到新数据