storedprocedure_storedprocedure|全球热推荐
(资料图片仅供参考)
1、* precedure 中用@@rowcount 用来显示上条命令影响的行数1. procedure 有输入参数。
2、无返回值procedure :USE [biyi]GOcreate proc TEST2 (@v1 nvarchar(50),@v2 nvarchar(50))as SELECT * FROM PROCE WHERE @v1>0 AND @v2>0GOC#中调用String ConnStr = ConfigurationManager.ConnectionStrings["Connection"].ConnectionString; using (SqlConnection conn = new SqlConnection(ConnStr)) { SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = "TEST2";//Procedure Name is TEST2 cmd.CommandType = CommandType.StoredProcedure; IDataParameter[] parameters = { new SqlParameter("@v1", c) , //Procedure 的第一个输入参数 new SqlParameter("@v2", SqlDbType.NVarChar,50), //Procedure 的第二个输入参数 }; parameters[0].Value = "1"; parameters[1].Value = "2"; cmd.Parameters.Add(parameters[0]); //或者 直接 cmd.Parameters.Add( "@v1",SqlDbType.NVarChar,50); cmd.Parameters.Add(parameters[1]); conn.Open(); SqlDataAdapter ad = new SqlDataAdapter(cmd); DataSet ds = new DataSet(); ad.Fill(ds); this.GridView1.DataSource = ds.Tables[0]; this.GridView1.DataBind(); }2. procedure 有输入参数。
3、也有返回值Procedure:USE [biyi]GOcreate proc TEST3 (@v1 nvarchar(50),@v2 nvarchar(50))as if @v1 > @v2 return 1 else return 2GOC#中调用: using (SqlConnection conn = new SqlConnection(ConnStr)) { SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = "TEST3";//Procedure Name cmd.CommandType = CommandType.StoredProcedure; IDataParameter[] parameters = { new SqlParameter("@v1", SqlDbType.NVarChar,50) , //Procedure 的第一个输入参数 new SqlParameter("@v2", SqlDbType.NVarChar,50), //Procedure 的第二个输入参数 new SqlParameter("return", SqlDbType.NVarChar,50), //返回值 }; parameters[0].Value = "1"; parameters[1].Value = "2"; parameters[2].Direction = ParameterDirection.ReturnValue; cmd.Parameters.Add(parameters[0]); cmd.Parameters.Add(parameters[1]); cmd.Parameters.Add(parameters[2]); conn.Open(); cmd.ExecuteNonQuery(); Label1.Text = parameters[2].Value.ToString(); }。
本文到此分享完毕,希望对大家有所帮助。
关键词: