c#的table中有两列A和B,如何根据A=string1,输出对应的B列的字符串 用datatable.select的只能得到数组

就是对一张表查询返回一个值,应该采用什么语句
2025-01-08 09:43:24
推荐回答(3个)
回答1:

用datatable.select的只能得到数组
这里的数组是DataRow[]
因为符合A=string1的记录行可能存在多个
如果你确定只会有一条记录
则可以如此来获取:
DataRow[] drs = datatable.Select("A=string1");
string b = drs[0]["B"].ToString();

回答2:

#region GetString 一个字符串
public string GetString(string tablename, string operatetype, string result, string conditions)
{
string AddressP = "";
string sqlstr = operatetype + " " + result + " from " + tablename + " where " + conditions;
using (SqlConnection connection = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand(sqlstr, connection))
{
try
{
connection.Open();

AddressP = cmd.ExecuteScalar().toString();
while (dr.Read())
{
AddressP = dr[0].ToString();
}
}
catch (System.Data.SqlClient.SqlException e)
{
connection.Close();
throw e;
}
}
}

return AddressP;
}
#endregion

这是我们项目中的一个基类函数,取一个值的全走这个,
主要是用的。ExecuteScalar()函数。

回答3:

执行ExecuteScalar 方法,然后 ,语句 这样写 select [字段]from 表名 where 条件 返回的是一个object 类型,此值 为 数据查询的第一行第一列的值。
SqlCommand cmd = new SqlCommand();

object retval = cmd.ExecuteScalar();