`
sptgreen
  • 浏览: 44450 次
  • 性别: Icon_minigender_1
  • 来自: 荆门
社区版块
存档分类
最新评论

asp.net中调用带输出参数的存储过程的两种方法

    博客分类:
  • .NET
阅读更多
1.     存储过程

       create     procedure UP_GetMaxgkrq
@maxdatetime datetime output
as
 
    select @maxdatetime=max(gkrq) from t_lpxx_case_1
 
程序

     SqlConnection conn = new SqlConnection(DbHelperSQL.connectionString);
              conn.Open();
              SqlCommand cmd = new SqlCommand("UP_GetMaxgkrq",conn);
           
              cmd.CommandType = CommandType.StoredProcedure;
              cmd.Parameters.Add("@maxdatetime", SqlDbType.DateTime);
              cmd.Parameters["@maxdatetime"].Direction = ParameterDirection.Output;
              cmd.ExecuteNonQuery();
              return cmd.Parameters["@maxdatetime"].Value.ToString();


2. 示例存储过程

      create PROCEDURE UP_t_collection_GetMaxId
AS
DECLARE @TempID int
SELECT @TempID = max([id])+1 FROM t_collection
IF @TempID IS NULL
    RETURN 1
ELSE
    RETURN @TempID

程序

using (SqlConnection connection = new SqlConnection(connectionString))
              {
                  int result;
                  connection.Open();
              
                  SqlCommand command = BuildIntCommand(connection, storedProcName, parameters);
                   cmd.Parameters.Add(new SqlParameter("ReturnValue",
                  SqlDbType.Int, 4, ParameterDirection.ReturnValue,
                  false, 0, 0, string.Empty, DataRowVersion.Default, null));
             cmd.ExecuteNonQuery();
          
             //int result = (int)cmd.Parameters["ReturnValue"].Value;
             return cmd.Parameters["ReturnValue"].Value.ToString();              }

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics