Certificate/정보처리기사

[2과목 소프트웨어 개발] 데이터 입·출력 구현 - 042. 절차형 SQL

S_sun 2024. 6. 18. 16:34
  • 프로그래밍 언어와 같이 연속적인 실행이나 분기, 반복 등의 제어가 가능한 SQL
  • 일반적인 프로그래밍 언어에 비해 비효율적이지만 단일 SQL문장으로 처리하기 어려운 연속적인 작업을 처리하는데 적합
  • 다양한 기능을 수행하는 저장 모듈 생성 가능
  • DBMS 엔진에서 직접 실행되기 때문에 입 · 출력 패킷이 적은 편
  • BEGIN ~ END 형식의 블록구조
  • 프로시저(Procedure)
    • 특정 기능을 수행하는 트랜잭션 언어
    • 호출을통해 실행되어 미리 저장해 놓은 SQL작업 수행
  • 트리거(Trigger)
    • CRUD 등의 이벤트(Event)가 발생할 때마다 관련 작업이 자동으로 수행
  • 사용자 정의 함수
    • 프로시저와 유사 = 일련의 작업을 연속적으로 처리
    • 종료 시 예약어 Return을 사용해 처리 결과를 단일값으로 반환

1. 테스트와 디버깅

  • 테스트를 통해 오류를 발견한 후 디버깅을 통해 오류가 발생한 소스 코드를 추적하며 수정
  • 디버깅 : 적합성 여부를 검증
  • 테스트 : 실행을 통해 결과를 확인
  • 테스트 전에 구문오류(Syntax Error)나 참조 오류 존재 여부 확인
  • SHOW 명령어로 메시지 상세히 확인하고 문제를 수정
  • 디버깅을 통해 로직을 검증하고 결과를 통해 최종적으로 확인
  • 실제 변화를 줄 수 있는 삽입, 변경 관련 SQL문은 주석으로 처리
  • 출력문을 이용해 화면에 출력하여 확인

2. 쿼리 성능 최적화

  • 성능향상을 위해 SQL 최적화
  • 최적화 하기 전 성능 측정 도구 APM을 사용해 최적화할 쿼리를 선정
  • 최적화 할 쿼리에 대해 옵티마이저가 수립한 실행 계획을 검토하고 SQL코드와 인덱스를 재구성
    • 옵티마이저 : DBMS에 내장되어 작성된 SQL이 효율적으로 수행되도록 최적의 경로를 찾아주는 모듈

 

 

📖 Reference
 

2023 시나공 정보처리기사 필기 : 네이버 도서

네이버 도서 상세정보를 제공합니다.

search.shopping.naver.com

 

728x90
반응형