2024年3月15日发(作者:)

C#获取存储过程的Return返回值和Output输出参数值

1.获取Return返回值

程序代码

//存储过程

//Create PROCEDURE MYSQL

// @a int,

// @b int

//AS

// return @a + @b

//GO

SqlConnection conn =

SqlConnection(tionStrings["LocalSqlServer"].ToString());

();

SqlCommand MyCommand = new SqlCommand("MYSQL", conn);

dType = Procedure;

(new SqlParameter("@a", ));

ters["@a"].Value = 10;

(new SqlParameter("@b", ));

ters["@b"].Value = 20;

(new SqlParameter("@return", ));

ters["@return"].Direction = Value;

eNonQuery();

(ters["@return"].ng());

2.获取Output输出参数值

程序代码

//存储过程

//Create PROCEDURE MYSQL

// @a int,

// @b int,

// @c int output

//AS

// Set @c = @a + @b

//GO

SqlConnection conn =

SqlConnection(tionStrings["LocalSqlServer"].ToString());

();

SqlCommand MyCommand = new SqlCommand("MYSQL", conn);

dType = Procedure;

(new SqlParameter("@a", ));

ters["@a"].Value = 20;

new

new

(new SqlParameter("@b", ));

ters["@b"].Value = 20;

(new SqlParameter("@c", ));

ters["@c"].Direction = ;

eNonQuery();

(ters["@c"].ng());

--------------------------------------------------------------------------------------------

-------------------

以下代码转自网络:

C#接收存储过程返回值:

public static int User_Add(User us)

{

int iRet;

SqlConnection conn = new SqlConnection(Conn_Str);

SqlCommand cmd = new SqlCommand("User_Add", conn);

dType = Procedure;

hValue("@UName", );

hValue("@UPass", );

hValue("@PassQuestion", estion);

hValue("@PassKey", y);

hValue("@Email", );

hValue("@RName", );

hValue("@Area", );

hValue("@Address", s);

hValue("@ZipCodes", es);

hValue("@Phone", );

hValue("@QQ", );

("@RETURN_VALUE", "").Direction =

Value;

try

{

();

eNonQuery();

iRet = (int)ters["@RETURN_VALUE"].Value;

}

catch (SqlException ex)

{

throw ex;

}

finally

{

();

}

return iRet;

}

C#接收存储过程输出参数:

public static decimal Cart_UserAmount(int UID)

{

decimal iRet;

SqlConnection conn = new SqlConnection(Conn_Str);

SqlCommand cmd = new SqlCommand("Cart_UserAmount", conn);

dType = Procedure;

hValue("@UID", UID);

("@Amount", l).Direction=;

try

{

();

eNonQuery();

iRet = (decimal)ters["@Amount"].Value;

}

catch (SqlException ex)

{

throw ex;

}

finally

{

();

}

return iRet;

}