ASP.NET에서 저장 프로시저 사용하기
먼저 Database에 테이블과 저장 프로시저를 만들어 놓는다.
1. 저장 프로시저는 다음과 같이 만든다.
CREATE PROC sp_member_add
(
@Name varchar(50),
@Content varchar(300),
@Email varchar(50)
)
AS
INSERT INTO 테이블
(
name, content, email
)
VALUES
(
@Name, @Content, @Email
)
2. 저장 프로시저는 ASP.NET에서 다음과 같이 실행한다. member_add 프로시저를 호출할 때 변수에 값을 넣어서 넘겨 주므로 실행하는 것으로 설명한다.
public void member_add( string name, string content, string email )
{
데이터베이스 연결 객체를 만들고 오픈을 한다.
string dbinfo = @"Server=서버명;uid=아이디;pwd=패스워드;database=데이타베이스명";
//문자열 앞에 @를 붙이는 이유 : 위에서는 @를 붙이나 안 붙이나 상관 없지만 문자 열을 여러 줄에 쓸 때 '@'을 붙이지 않으면 컴파일 에러가 발생한다. 즉, 여러 줄인 문자열을 쓸 때 유용하다.
SqlConnection conn;
conn = new SqlConnection( dbinfo );
conn.Open();
SqlCommand cmd = new SqlCommand("sp_member_add", conn);
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter param1 = new SqlParameter("@Name", SqlDbType.VarChar, 50 );
param1.Value = name;
cmd.Parameters.Add(param1);
SqlParameter param2 = new SqlParameter("@Content", SqlDbType.VarChar, 300);
param2.Value = content;
cmd.Parameters.Add(param2);
SqlParameter param3 = new SqlParameter("@Email", SqlDbType.VarChar, 50);
param3.Value = email;
cmd.Parameters.Add(param3);
cmd.ExecuteNonQuery();
conn.Close();
}