SqlParameter 를 사용한 저장 프로시저 연동하기
DB&XML 2007. 9. 27. 01:52 |[DB 테이블 내용]
NoteDB
> 테이블
>note(dbo.note)
nid : int : No null
name : varchar(20) : null
content : text : null
email : varchar(32) : null
date : datetime : null
[저장 프로시저 내용]
USE [NoteDB]
GO
/****** 개체: StoredProcedure [dbo].[sp_AddNote] 스크립트 날짜: 09/27/2007 01:57:39 ******/
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO
ALTER Procedure [dbo].[sp_AddNote]
(
@Name varchar(50),
@Content varchar(400),
@Email varchar(50)
)
AS
INSERT INTO Note
(
name, content, email, date
)
VALUES
(
@Name, @Content, @Email, getdate()
)
[코드 내용]
//커텍션 스트링 지정
string source = @"Data Source=GSI;Initial Catalog=NoteDB;Persist Security Info=True;User ID=sa;Password=****";
//커넥션 개체 생성
SqlConnection conn;
conn = new SqlConnection(source);
//커넥션 오픈
conn.Open();
//저장 프로시저 오픈 및 값 저장
SqlCommand cmd = new SqlCommand("sp_AddNote", 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, 400);
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();