任何人都可以告诉我如何从表中获取SELECT
查询的值
protected void Button_Click(object sender, EventArgs e)
{
string select_qry = "SELECT ID, USER, FILE, DATE, LASTUSED from FILE_INFO where USER = '" + user + "'"; // ID is primary key
SqlCommand cmd = new SqlCommand(select_qry);
GridView1.DataSource = GetData(cmd);
GridView1.DataBind();
}
private DataTable GetData(SqlCommand cmd)
{
DataTable dt = new DataTable();
SqlDataAdapter sda = new SqlDataAdapter();
cmd.CommandType = CommandType.Text;
cmd.Connection = conn1;
conn1.Open();
sda.SelectCommand = cmd;
sda.Fill(dt);
return dt;
}
我有不同的用户我希望获得用户ID如果用户不同说'Sheena'的ID值为1-10,但如果用户是'Sara'并且她的ID是11-20,那么我想得到特别是用户ID如何从选择查询中获取ID可以任何人知道然后请帮助我:))
答案 0 :(得分:3)
如果ID始终位于select语句的第一位,您可以调用它:
VB.NET
var dt = GetData(cmd);
dt.Rows.Item(0).Item("ID")
C#的.NET
var dt = GetData(cmd);
dt.Rows[0]["ID"];
答案 1 :(得分:0)
我不是很好。但
示例数据
DataTable dt = new DataTable();
dt.Columns.Add("id", typeof(int));
dt.Columns.Add("userName", typeof(string));
dt.Rows.Add(1, "Sheena");
dt.Rows.Add(2, "Meena");
dt.Rows.Add(2, "Teena");
获取第一行的ID。
if (dt.Rows.Count > 0)
{
// return id in first row.
int id = (int)dt.Rows[0]["id"];
}
DataTable Select方法
if (dt.Rows.Count > 0)
{
DataRow[] dr = dt.Select("userName = 'Meena'");
if (dr.Length > 0)
{
int id2 = (int)dr[0]["id"];
}
}
还有其他方法,但我很快就能写出来。
答案 2 :(得分:0)
我认为您可以在查询中执行此操作,例如
Select case id >= 11 and id <= 20 then 'specially id' end as ID ......
因为'user'是一个参数,所以您可以在创建查询时知道id范围。
所以,你的源代码中不需要任何逻辑,只需像@Mark那样获取数据。