ALTER PROCEDURE get_user //存储过程

AS
select name1 from T_user
RETURN
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;
using System.Data;
public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
        SqlCommand cmd = new SqlCommand("get_user",conn);
        cmd.CommandType = CommandType.StoredProcedure;
        conn.Open();
        SqlDataReader sdr = cmd.ExecuteReader();
        
        if(sdr.Read())
        {            TextBox1.Text = sdr[0].ToString();  
        }
           }
}  //我的代码,我的数据库有很多数据,为什么只能读出,第一条数据??求高手,给详细答案

解决方案 »

  1.   

    应循环读取sdr,
    .....
    SqlDataReader sdr = cmd.ExecuteReader();
           while( sdr.Read())
            {
                Response.Write(sdr[0].ToString()+"<br />");        }
      

  2.   

     public static DataTable ReturnDataTable(string cmdtext, CommandType ct)
            {
                DataTable dt = new DataTable();
                cmd = new SqlCommand(cmdtext, GetConn());
                cmd.CommandType = CommandType.Text;
                SqlDataReader dr = null;
                using (dr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
                {
                    dt.Load(dr);
                }
                return dt;
            }调用ReturnDataTable(sql语句或者存储过程Name)
      

  3.   

    if(sdr.Read())
     读了一条就over了,用while
      

  4.   

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Data.SqlClient;
    using System.Configuration;
    using System.Data;
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
            SqlCommand cmd = new SqlCommand("get_user",conn);
            cmd.CommandType = CommandType.StoredProcedure;
            conn.Open();
            SqlDataReader sdr = cmd.ExecuteReader();
            
            while(sdr.Read())
            {
                this.TextBox1.Text += sdr["name1"];//得用字符串的相加,防止结果
                  
            }
               }
    }