본문 바로가기

SQL

저장 프로시져 그리고 뷰,,

 
DBMS에서 뷰(View)와 저장 프로시저(Stored Procedure)는 매우 다른 개념이지만
각각의 용도와 특성을 이해하는 것은 데이터베이스 설계와 사용에 있어 매우 중요합니다. 다음은 각각에 대한 주요 차이점입니다:

저장 프로시저(Stored Procedure)
1. 정의:
저장 프로시저는 데이터베이스에 저장된 하나 이상의 SQL 문의 집합으로, 필요할 때 호출되어 실행됩니다.
2. 용도:
복잡한 비즈니스 로직, 데이터 검증, 반복적인 작업 등을 데이터베이스 서버에서 직접 처리하기 위해 사용됩니다.
3. 특징:
저장 프로시저는 데이터를 읽고, 쓰고, 수정하고, 삭제하는 등의 다양한 작업을 수행할 수 있습니다.
4. 성능:
저장 프로시저는 데이터베이스 서버에서 직접 실행되므로 네트워크 지연 시간을 줄이고, 성능을 향상할 수 있습니다. 또한, SQL 문이 미리 컴파일되어 실행 속도가 빠릅니다.

 

뷰(View)
1. 정의:
뷰는 데이터베이스의 하나 이상의 테이블에서 파생된 가상 테이블입니다.  실제로 데이터를 저장하지 않고, 하나 이상의 테이블에 대한 SQL 쿼리의 결과를 나타냅니다. (SELECT만 가능)
2. 용도:
뷰는 데이터를 단순화하거나 제한된 데이터 접근을 제공하는 데 사용됩니다. 예를 들어, 사용자에게 특정 열만 보이도록 하거나, 복잡한 조인을 숨기는 용도로 활용됩니다.
3. 특징 :
기본적으로 뷰는 읽기 전용입니다. 그러나, 특정 조건하에 데이터를 삽입하거나 수정하는 것이 가능한 업데이트 가능 뷰도 있습니다. 그리고 복잡한 쿼리문을 단순하게 만들기 용이합니다. 어떤 데이터를 검색하는 쿼리를 하나의 뷰로 생성한 뒤 사용하게 되면 간단히 해당 뷰의 이름만으로도 처리가 가능합니다. 
4. 성능:
뷰는 쿼리의 재사용성을 높이지만, 추가적인 처리 단계를 거치므로 성능 저하가 발생할 수 있습니다.

요약


- 데이터 저장: 뷰는 데이터를 저장하지 않지만, 저장 프로시저는 데이터베이스의 로직을 저장합니다.
- 용도와 기능: 뷰는 SELECT을 위해 사용되며 주로 읽기에 초점을 맞춥니다. 저장 프로시저는 복잡한 작업을 처리하고, 데이터를 읽고 쓰는 등 다양한 기능을 수행합니다.
- 성능: 뷰는 쿼리의 재사용성 측면에서 뛰어나고, 저장 프로시저는 복잡한 로직을 빠르게 실행하기 용이합니다.

반응형