반응형
Procedure 란?
- 저장 프로시저는 하나 이상으로 구성된 Transact-SQL 문을 데이터베이스에 저장하는 개체
- 한번 정의한 내용 다시 재사용 가능
- 프로시저
프로시저 종류
- 한번 정의한 내용 다시 재사용 가능
- 프로시저
프로시저 종류
- sub프러시저 ,Function프러시저
( @매개변수 타입)
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'
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'
끝~
반응형
'DataBase > MS SQL' 카테고리의 다른 글
DB 컬럼의 값이 NULL 이 아닐때..제외하기 (0) | 2011.11.23 |
---|---|
While 문으로 Insert , Delete 문 사용 (0) | 2011.07.19 |
DB 테이블 데이터 복사 하기 (0) | 2011.06.02 |
UNION ALL, UNION (0) | 2011.05.11 |
프로시저 IF ELSE, EXISTS 구분 사용하기 (0) | 2011.04.28 |
Comments