存储过程定义:
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();