C#에서 입출력 매개변수 저장 프로세스 호출

5170 단어 저장 프로세스
저장 프로세스에 대한 소개도 낯설지 않으실 거예요.여러분은 이라는 문장을 참고할 수 있는데, 여기에는 소개하지 않겠습니다.오늘 소개할 것은 C#에서 입력과 출력 파라미터를 가진 저장 과정을 어떻게 호출하는지 하는 것이다.예를 들어 간단한 로그인 기능을 실현하고 사용자가 입력한 사용자 이름, 사용자 비밀번호와
  
저장 프로세스에 대한 소개도 낯설지 않으실 거예요.여러분은 이라는 문장을 참고할 수 있는데, 여기에는 소개하지 않겠습니다.
오늘 소개할 것은 C#에서 입력과 출력 파라미터를 가진 저장 과정을 어떻게 호출하는지 하는 것이다.예를 들어 간단한 로그인 기능을 실현하고 사용자가 입력한 사용자 이름, 사용자 비밀번호와 사용자 권한에 따라 로그인을 실현한다.여기에 입력 매개 변수를 충당하는 것은 사용자 이름, 사용자 비밀번호, 로그인 권한입니다.출력 파라미터를 충당하는 것은 데이터베이스에서 입력 파라미터의 정보에 따라 데이터베이스에 기록이 있는지 조회하는 것이다.구체적으로 말하면 기록된 행수다.
데이터베이스의 저장 프로세스 구축 코드:
  Code 1use Hotel --
2if exists(select * from sysobjects where name='proc_userinfo')--
3drop proc proc_userinfo --
4go
5--
6create proc proc_userinfo
7@username varchar(50),--
8@pwd varchar(50),--
9@grade varchar(20),--
10@count int output -- output
11--sql
12as
13select @count=count(*) from userinfo where username=@username and pwd=@pwd and @grade=grade
14go
15
16
17

18declare @n int
19exec proc_userinfo admin,123, ,@n output
20--output
21print @n
22go

데이터 액세스 계층 코드
  Code 1//
2//select count(*) from userinfo where username=username and pwd=pwd and grade=grade
3// 、 、
4public bool GetUserinfo(string username,string pwd,string grade)
5    {
6      //
7      private string connstring = ConfigurationManager.ConnectionStrings["connstring"].ToString();
8      int n = 0;//
9      // using
10      using (SqlConnection con=new SqlConnection(connstring))
11      {
12        con.Open();//
13        using (SqlCommand cmd=new SqlCommand("proc_userinfo",con))
14        {
15          //
16          cmd.CommandType = CommandType.StoredProcedure;
17          //
18          cmd.Parameters.Add("@username", SqlDbType.VarChar, 50).Value=username;
19          cmd.Parameters.Add("@pwd", SqlDbType.VarChar, 50).Value=pwd;
20          cmd.Parameters.Add("@grade", SqlDbType.VarChar, 50).Value=grade;
21          cmd.Parameters.Add("@count", SqlDbType.Int);
22          cmd.Parameters["@username"].DbType = DbType.String;
23          //
24          cmd.Parameters["@username"].Direction = ParameterDirection.Input;
25          cmd.Parameters["@pwd"].DbType = DbType.String;
26          //
27          cmd.Parameters["@pwd"].Direction = ParameterDirection.Input;
28          cmd.Parameters["@grade"].DbType = DbType.String;
29          //
30          cmd.Parameters["@grade"].Direction = ParameterDirection.Input;
31          cmd.Parameters["@count"].DbType = DbType.Int32;
32          //
33          cmd.Parameters["@count"].Direction = ParameterDirection.Output;
34          //
35          cmd.ExecuteScalar();
36          //
37          n = (int)cmd.Parameters["@count"].Value;
38          //
39          if (n==1)
40          {
41            return true;

좋은 웹페이지 즐겨찾기