我有

staff table
staff_Id
staff_Accesscode values (access123,code123,staff12)....

我这样做是为了获取staff\u accesscode中的所有值
DataTable dt2 = null;
string sql = @"SELECT staff_AccessCode FROM staff";
dt2 = xxxxxx.GetData(sql, gBaseUrl);
if (dt2 != null && dt2.Rows.Count > 0)
{
   accessname = dt2.Rows[0]["staff_AccessCode"].ToString();
}

但问题是它只返回staff_accesscode中存储的最后一个值,我的意思是它只返回这个值(staff12)
现在我想得到staff\u accesscode字段中存储的所有值,并进一步用txtbox.text检查这个值。

最佳答案

您只访问第一行(索引为0)。
您可以遍历完整的结果集:

for ( int i = 0; dt2 != null && i < dt2.Rows.Count; ++i )
{
    String tmp = dt2.Rows[ i ]["staff_AccessCode"].ToString();
    if ( tmp.Equals( what_ever_variable_or_constant /* e.g., txtbox.Text */ ) )
    {
        accessname = tmp;
        //break; ?
    }
}

关于c# - 我的SQL只返回单个值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6847881/

10-11 01:10