1. 创建存储过程
--创建数据库Bank
create database Bank
go
--打开数据库
use Bank
go
--创建数据表Account
create table Account(
id int not null primary key, --银行帐号
name nvarchar(20) not null, --帐户名称
password varchar(20) not null, --密码
openDate Datetime, --开户日期
balance numeric(10,2) --余额
)
go
--添加测试数据
insert into Account values(1,'sun','sun',getdate(),10000);
go
--创建存储过程
--名称 up_isAccountIdExsit
--输入参数:id,帐号
--输出参数:result,符合条件数据行数
create procedure up_isAccountIdExsit
(
@id int,
@result int output
)
as
select @result=count(*) from Account where id=@id
--测试存储过程
declare @result int
execute up_isAccountIdExsit 2,@result output
select @result
2. C#程序编码
public bool isAccountIdExist(int id)
{
bool flag = false;
cmd = new SqlCommand("up_isAccountIdExsit", con);
cmd.CommandType = CommandType.StoredProcedure;
// 注册输入参数@id,并设置参数值id
cmd.Parameters.Add("@id",id);
// 注册输出参数@result
SqlParameter resultParameter= cmd.Parameters.Add("@result", SqlDbType.Int);
// 参数类型为输出参数
resultParameter.Direction = ParameterDirection.Output;
try
{
con.Open();
cmd.ExecuteNonQuery();
//取输出参数值
int i=int.Parse(resultParameter.Value.ToString());
if (i > 0)
flag = true;
}
catch (Exception e)
{
//Console.Write("异常出现:"+e.Message);
}
finally
{
cmd.Dispose();
con.Close();
}
return flag;
}