不返回结果的存储过程
conn.Open();
SqlCommand comm = conn.CreateCommand();
comm.CommandType = CommandType.StoredProcedure;
comm.CommandText = "shenhe";
comm.Parameters.Add("@dqrq", SqlDbType.VarChar);
comm.Parameters.Add("@dqsj", SqlDbType.VarChar);
comm.Parameters.Add("@sj1", SqlDbType.VarChar);
comm.Parameters.Add("@sj2", SqlDbType.VarChar);
comm.Parameters.Add("@shrq", SqlDbType.VarChar);
comm.Parameters["@dqrq"].Value = nowdate.ToString().Trim();
comm.Parameters["@dqsj"].Value = nowtime.ToString().Trim();
comm.Parameters["@sj1"].Value ="0"+sj1.ToString()+":00:00";
comm.Parameters["@sj2"].Value =sj2.ToString()+":00:00";
comm.Parameters["@shrq"].Value = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd");
conn.Close();
返回结果的存储过程执行
conn.Open();
SqlCommand cmd = new SqlCommand("ls", conn); //声明、定义命令
cmd.CommandType = CommandType.StoredProcedure; //命令类型为存储过程
cmd.Parameters.Add("@num", SqlDbType.VarChar); //存储过程所需要的参数
cmd.Parameters["@num"].Value = "3167"; //参数赋值
SqlDataAdapter da = new SqlDataAdapter(cmd); //定义数据适配器
DataSet ds = new DataSet(); //定义数据集
da.Fill(ds,"table");
this.dataGridView1.DataSource = ds.Tables["table"].DefaultView;
this.textBox1.Text = ds.Tables["table"].Rows[0]["姓名"].ToString();
conn.Close();
返回结果的存储过程执行 和上面一个略有不同
conn.Open();
SqlCommand cmd = new SqlCommand("ls", conn); //声明、定义命令
cmd.CommandType = CommandType.StoredProcedure; //命令类型为存储过程
cmd.Parameters.Add("@num", SqlDbType.VarChar); //存储过程所需要的参数
cmd.Parameters["@num"].Value = "3167"; //参数赋值
SqlDataReader dr = cmd.ExecuteReader(); //定义数据读取
while (dr.Read())
{
this.textBox1.Text = dr["姓名"].ToString();
this.textBox2.Text = dr["地址"].ToString();
}
conn.Close();
执行存储过程、参数代表字段名并返回字段
存储过程写法如下,执行存储过程的方法如上
create proc ls
@num varchar(20) output
as
exec('select ' + @num+' from hyzl')
GO
字段名是有参数提供,并返回这个字段的内容 注意select的单引号和后面的空格 及from的单引号和空格
c#中执行如下:
conn.Open();
SqlCommand cmd = new SqlCommand("ls", conn); //声明、定义命令
cmd.CommandType = CommandType.StoredProcedure; //命令类型为存储过程
cmd.Parameters.Add("@num", SqlDbType.VarChar); //存储过程所需要的参数
cmd.Parameters["@num"].Value = "会员卡号"; //参数赋值
SqlDataAdapter da = new SqlDataAdapter(cmd); //定义数据适配器
DataSet ds = new DataSet(); //定义数据集
da.Fill(ds,"table");
this.dataGridView1.DataSource = ds.Tables["table"].DefaultView;
conn.Close();