저장프로시저를 이용한 DB 데이터 삽입

2017. 1. 31. 16:09C# 윈폼 ( Windows Forms )/DB (데이터베이스)

1. DB 연결하기

DB (데이터베이스) 연결하기


2. 저장프로시저를 이용한 DB 데이터 삽입

   -1) 아래와 같이 GUI를 구성합니다.

   -2) Label의 ID "lab_Name, lab_Tell, lab_Age", Button의 ID "btn_DBInData"로 설정합니다.


   -3) 저장프로시저를 추가하기 위해 서버탐색기(Ctrl+ W, L)를 열어줍니다.

   -4) 저장 프로시저를 마우스 우클릭 -> 새 저장 프로시저 추가를 클릭합니다.


   -5) 저장프로시저명과 내용을 입력하고 저장버튼(Ctrl + S)을 클릭합니다.


CREATE PROCEDURE 프로시저명

/*

(

@parameter1 int = 5,

@parameter2 datatype OUTPUT

)

*/

AS

/* SET NOCOUNT ON */

RETURN


 


   -6) 저장 전 "CREATE"문구가 저장 후 "ALTER"로 변경된 것을 확인할 수 있습니다.


   -7) 저장이 되면 서버탬색기의 항목중 저장프로시저에 생성된 것을 확인 할 수 있습니다.


   -8) Button의 클릭이벤트( btn_DBInData_Click )를 설정합니다.


   -9) 프로그램을 실행한 후 TextBox에 내용을 입력하고Button을 입력하면 DB에 데이터가 삽입됩니다.


   -10) 서버탐색기의 항목 중 테이블에서 데이터를 확인할 테이블을 마우스 우클릭 -> 테이블 데이터 표시를 클릭합니다.


   -11) 데이터가 삽입된 것을 확인할 수 있습니다.


   -12) 소스코드


namespace yuchae

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }


        private void btn_DBInData_Click(object sender, EventArgs e)

        {

            try

            {

                SqlConnection YuchaeDBConn = new SqlConnection();

                //DB 연결 변수

                YuchaeDBConn.ConnectionString = "Server = Sql서버인스턴스명; database = 데이터베이스명; uid = 아이디; pwd = 패스워드";

                //DB 열기

                YuchaeDBConn.Open();


                //저장프로시저 사용

                SqlCommand Command = new SqlCommand();

                Command.Connection = YuchaeDBConn;

                Command.CommandType = CommandType.StoredProcedure;

                //저장프로시저명

                Command.CommandText = "DBInData";

                Command.Parameters.AddWithValue("@name", tb_Name.Text);

                Command.Parameters.AddWithValue("@tell", tb_Tell.Text);

                Command.Parameters.AddWithValue("@age", tb_Age.Text);


                MessageBox.Show("앙큼한유채 : 데이터가 저장됐습니다.", "Information");


                Command.ExecuteNonQuery();

                //DB 닫기

                YuchaeDBConn.Close();

            }

            catch (SqlException ex)

            {

                MessageBox.Show(ex.Message);

            }

        }

    }

}