关于C#调用存储过程,带输出参数,存储过程

存储过程定义:

Create PROCEDURE [dbo].[sp_CreateSQL]
@name varchar(1000),
@sql varchar(7000),
@i int output
AS
BEGIN
declare @sql1 varchar(7000)
set @sql1 = 'Create View '+ @name +' as '+@sql
exec(@sql1)
set @i= @@ERROR
END

 

C#后台调用:

            SqlConnection myConn = _db.ReturnSqlConnection();
            SqlCommand myCmd = new SqlCommand("sp_CreateSQL",myConn);
            myCmd.CommandType = CommandType.StoredProcedure;
            myCmd.Parameters.Add("@name", SqlDbType.VarChar,1000);
            myCmd.Parameters["@name"].Value = ReportName;
            myCmd.Parameters.Add("@sql", SqlDbType.VarChar,7000);
            myCmd.Parameters["@sql"].Value = sql;
            myCmd.Parameters.Add("@i",SqlDbType.Int,4);
            myCmd.Parameters["@i"].Direction = ParameterDirection.Output;
            myCmd.ExecuteNonQuery();
            string i = myCmd.Parameters["@i"].Value.ToString();
            myCmd.Dispose();
            myConn.Dispose();

你可能感兴趣的:(C#,winFrom,存储,c#,sql,string)