SQL 存储过程一部分:
......
update table set name=@name where id='123'
if @@ERROR<>0 or @@ROWCOUNT=0
begin
select 'F','更新数据失败!'
return
end C#调用这个存储过程执行,若失败,SQL错误提示信息:“更新数据失败!”如何在前台显示? 存储C#SQL
......
update table set name=@name where id='123'
if @@ERROR<>0 or @@ROWCOUNT=0
begin
select 'F','更新数据失败!'
return
end C#调用这个存储过程执行,若失败,SQL错误提示信息:“更新数据失败!”如何在前台显示? 存储C#SQL
C#
ParameterEx[] parameters = new ParameterEx[2];
parameters[0].Text = "@ERR_CODE";
parameters[0].Value = -1;
parameters[0].ParaDirection = ParameterDirection.Output;
parameters[1].Text = "@ERR_TEXT";
parameters[1].Value = "";
parameters[1].ParaSize = 200;
parameters[1].ParaDirection = ParameterDirection.Output;
if (Convert.ToInt32(parameters[0].Value) != 0)
{
throw new Exception(parameters[1].Value.ToString().Trim());
}过程定义部分
@ERR_CODE INT OUTPUT,
@ERR_TEXT VARCHAR(100) OUTPUT
SqlCommand com=new SqlCommand("exec usp_cs1",con);
try
{
con.Open();
SqlDataReader dataReader = com.ExecuteReader();
if (dataReader.Read())
{
if (dataReader[0].ToString() == "F")
{
MessageBox.Show(dataReader[1].ToString());
return;
}
}
}
catch
{
}
finally
{
con = null;
}
{
//
}
catch (System.Data.SqlClient.SqlException ee)
{
Response.Write(ee.ToString());
}
create procedure queryStuNameById
(
@inParameter varchar(10),--输入参数
@errorMessage varchar(10) output --输出参数
)
在存储过程主体:
set @errorMessage='更新数据失败!' ;然后在代码里面调用这个存储过程,去out变量的值既可以得到结果。
string outMessage="";
outMessage= sqlComm.Parameters["@errorMessage"].Value.ToString();