Blog Content

    티스토리 뷰

    Procedure 프로시저 정리

    반응형
    Procedure 란?
    - 저장 프로시저는 하나 이상으로 구성된 Transact-SQL 문을 데이터베이스에 저장하는 개체
    - 한번 정의한 내용 다시 재사용 가능
    - 프로시저 

    프로시저 종류
    - sub프러시저 ,Function프러시저

    참고 - http://blog.pages.kr/41



    말보다는 예제가 편하겠죠. 기본 프로시저 입니다.

    Create
     PROCEDURE SP_WRITE(프로시저 이름)
    ( @매개변수 타입)
    AS
        (구문)
    GO

    또는 

    Create PROC  SP_WRITE(프로시저 이름) 
    ( @매개변수 타입)
    AS
        (구문)
    GO

    프로시저 이름을 만들어주실때 앞에 구분을 지어주시면 쉽게 알아볼수 있겠네요.  저는 stored Procedure 약자를 사용했습니다.
     

    stored Procedure란? 
     
    Stored procedure[스토어드 프로시저]는 DBMS에서 데이터베이스 서버와 함께 저장되어 있는 연산을 말하며, 일반적으로 SQL로 작성된다. 클라이언트/서버 시스템에서는 특히 중요한데, 그 이유는 서버 측에 프로시저를 저장한다는 것은 모든 클라이언트에서 그것을 사용할 수 있다는 것을 의미하기 때문이다. SQL 프로시저가 데이터베이스에 저장되면, 각 클라이언트마다 그것을 복사할 필요가 없게 된다. 그리고 프로시저가 수정되었을 때, 모든 클라이언트는 자동으로 새로운 버전을 가지게 된다.
    Stored procedure는 특히, 서로다른 클라이언트 사용자 인터페이스들과 개발 시스템이 사용되었을 때 프로그래밍 노력을 절감시켜준다.

    출처 :  
     http://terms.co.kr/storedprocedure.htm



    입력 프로시저
    Create Proc SP_Write
    (
        @ID          VARCHAR(50),
        @NAME  VARCHAR(50)
    )
    AS
        INSERT INTO TABLE_1 VALUES(@ID, @NAME)

    -> 호출 : exec SP_Write @ID=N'ID_1', @NAME=N'NAME_1'
     


    출력 프로시저
    Create Proc SP_List
    AS
        Begin
               Select *From TABLE_1
        End

    -> 호출 : exec SP_List


    수정 프로시저
    Create Proc SP_UPDATE
    (
        @ID          VARCHAR(50),
        @NAME  VARCHAR(50)
    )
    AS
        Update TABLE_1
        Set
              NAME = @NAME
        Where
              ID = @ID

    -> 호출 : exec SP_UPDATE @NAME=N'1_NAME', @ID=N'ID_1'


    삭제 프로시저
    Create Proc SP_DELETE
    (
        @ID          VARCHAR(50)
    )
    AS
        Delete From TABLE_1 Where ID = @ID

    -> 호출 : exec SP_DELETE @ID=N'ID_1'


    검색 프로시저
    Create Proc SP_SEARCH
    (
        @ID          VARCHAR(50)
    )
    AS
        Select *From TABLE_1 Where ID LIKE '%' + @ID + '%'

    -> 호출 : exec SP_SEARCH @ID=N'ID_1'


    상세 프로시저
    Create Proc SP_VIEW
    (
        @ID          VARCHAR(50)
    )
    AS
        Select *From TABLE_1 Where ID = @ID

    -> 호출 : exec SP_VIEW @ID=N'ID_1'

    끝~


    반응형

    Comments