SqlConnection con = new SqlConnection("server=.;database=StoreHouse;uid=sa;pwd=1");
con.Open();
SqlCommand objCmd = new SqlCommand("pr",con);
objCmd.CommandType = CommandType.StoredProcedure;
objCmd.Parameters.Clear();
objCmd.Parameters.Add("@Name", SqlDbType.VarChar, 80).Value ="fff";
objCmd.Parameters.Add("@Recount", SqlDbType.Int).Direction = ParameterDirection.Output; SqlDataReader dr = objCmd.ExecuteReader();
while (dr.Read())
{
Response.Write(dr[0].ToString());
}
==============================================
create PROCEDURE [dbo].[pr]
@Name varchar(50),
@Recount int output
AS
BEGIN
select * from a where [Name]=@Name
select @Recount=count(*) from a where [Name]=@Name
END
为什么dr.Read()一直为false 有答案就结贴
new SqlParameter("@Name", SqlDbType.NVarChar,80),
new SqlParameter("@Recount", SqlDbType.Int,4)
};
parameters[0].Value = "";
parameters[1].Direction = ParameterDirection.Output;
cmd.Parameters.Add(parameters[0]);
cmd.Parameters.Add(parameters[1]);
SqlDataAdapter dp = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
dp.Fill(ds);
Label1.Text += parameters[0].Value.ToString()
select @Recount=count(*) from a where [Name]=@Name
select * from a where [Name]=@Name