gpt4 book ai didi

c# - DataReader IndexOutofRangeException 未被用户代码处理

转载 作者:行者123 更新时间:2023-12-02 04:34:58 25 4
gpt4 key购买 nike

我又遇到了另一个问题。我试图使用 DataReader 从数据库中获取数据,但在测试我的代码时出现错误。谁能帮我吗?错误发生在这一行:

chkAssess = readAssess[columnName].ToString();

下面是代码片段:

public string CheckAssess(string emailAddress, string columnName)
{
string chkAssess = "";
SqlDataReader readAssess;
//readAssess = new SqlDataReader();

string MgrAssessQry = "SELECT '"+columnName+"' FROM tblAllUsers";
//MgrAssessQry += " WHERE email ='" + emailAddress + "'";

SqlCommand cmdReadAssess = new SqlCommand(MgrAssessQry, cn);
cn.Open();
readAssess = cmdReadAssess.ExecuteReader();

while(readAssess.Read())
{
// Add the rows
chkAssess = readAssess[columnName].ToString();
}

return chkAssess;
}

最佳答案

尝试使用不带''的列名

select something from table 

代替

select 'something' from table
  1. 出于安全原因,不要以这种方式(通过连接字符串)创建 sql 查询 - 而是使用@parameters

<强>2。最后关闭阅读器

关于c# - DataReader IndexOutofRangeException 未被用户代码处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22172358/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com