C#中如何显示出数据库表中某一列的所有信息~ 15
RTSqlConnectioncon=newSqlConnection("DataSource=(local);Database=UserInfo;Uid=sa;Pwd=...
RT
SqlConnection con = new SqlConnection("Data Source=(local);Database=UserInfo;Uid=sa;Pwd=;");
con.Open();
string strSQL = "select 账号,注册时间 from Users where 账号= @userid";
SqlCommand cmd = new SqlCommand(strSQL,con);
cmd.Parameters.AddWithValue("@userid", textBox1.Text.Trim());
SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read ())
{
label3.Text = dr.GetValue(0).ToString();
label4.Text = dr.GetValue(1).ToString();
}
用这段代码每次都只能查询到一个信息,要怎么样才能让那一列的所有信息都显示出来呢?? 展开
SqlConnection con = new SqlConnection("Data Source=(local);Database=UserInfo;Uid=sa;Pwd=;");
con.Open();
string strSQL = "select 账号,注册时间 from Users where 账号= @userid";
SqlCommand cmd = new SqlCommand(strSQL,con);
cmd.Parameters.AddWithValue("@userid", textBox1.Text.Trim());
SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read ())
{
label3.Text = dr.GetValue(0).ToString();
label4.Text = dr.GetValue(1).ToString();
}
用这段代码每次都只能查询到一个信息,要怎么样才能让那一列的所有信息都显示出来呢?? 展开
5个回答
展开全部
可以用下面的代码保存结果到一个DataTable
DataTable dtable;
dtable= new DataTable("info");
//账号
DataColumn dc = new DataColumn();
dc.DataType = System.Type.GetType("System.String");
dc.ColumnName = "账号";
dtable.Columns.Add(dc);
//注册时间
DataColumn dc0 = new DataColumn();
dc0.DataType = System.Type.GetType("System.String");
dc0.ColumnName = "注册时间";
dtable.Columns.Add(dc0);
。。。。
sqlcon.Open();
SqlDataReader dread = sqlcom.ExecuteReader();
while (dread.Read())
{
DataRow dr = pictb.NewRow();
dr["账号"] = dread[0].ToString();
dr["注册信息"] = dread[1].ToString();
dtable.Rows.Add(dr);
}
DataTable dtable;
dtable= new DataTable("info");
//账号
DataColumn dc = new DataColumn();
dc.DataType = System.Type.GetType("System.String");
dc.ColumnName = "账号";
dtable.Columns.Add(dc);
//注册时间
DataColumn dc0 = new DataColumn();
dc0.DataType = System.Type.GetType("System.String");
dc0.ColumnName = "注册时间";
dtable.Columns.Add(dc0);
。。。。
sqlcon.Open();
SqlDataReader dread = sqlcom.ExecuteReader();
while (dread.Read())
{
DataRow dr = pictb.NewRow();
dr["账号"] = dread[0].ToString();
dr["注册信息"] = dread[1].ToString();
dtable.Rows.Add(dr);
}
展开全部
你用了where 账号= @userid";
那当然只能查到一个了,除非账号= @userid的记录很多,
去掉where 子句就行了
那当然只能查到一个了,除非账号= @userid的记录很多,
去掉where 子句就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.where 账号= @userid——限定了你的查询条件,只能查到与@userid相同的数据
2. if (dr.Read ())
{
label3.Text = dr.GetValue(0).ToString();
label4.Text = dr.GetValue(1).ToString();
}
这里应该显示的是查到的第一行数据吧……
建议你用绑定datagridview来显示数据,label显示不了多少的……
显示多行数据的话最好用dataset,不要用sqldatareader
2. if (dr.Read ())
{
label3.Text = dr.GetValue(0).ToString();
label4.Text = dr.GetValue(1).ToString();
}
这里应该显示的是查到的第一行数据吧……
建议你用绑定datagridview来显示数据,label显示不了多少的……
显示多行数据的话最好用dataset,不要用sqldatareader
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if (dr.Read ())
{
lable1.Text=dr["columnName"]+"//n";
}
{
lable1.Text=dr["columnName"]+"//n";
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不用SqlDataReader ,用DataSet
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |