본문 바로가기

자격증/정보처리기사 - 실기

SQL 응용

728x90

[ DDL ]

< CREATE >

테이블 생성

PRIMARY KEY : 기본키 설정

FOREIGN KEY 속성명 REFERENCES 참조 테이블 : 외래키 설정 / 참조할 테이블 설정

- 옵션

1. ON DELETE : 참조 테이블 튜플 삭제 시 기본 테이블 변화( NO ACTION, CASCADE, SET NULL, SET DEFAULT )

2. ON UPDATE : 참조 테이블 튜플 수정 시 기본 테이블 변화( NO ACTION, CASCADE, SET NULL, SET DEFAULT )

CONSTRAINT 제약 조건명 CHECK 조건 식 : 제약 조건 설정

 

< ALTER >

테이블 변경

● 형식 : ALTER TABLE 테이블명 키워드

- 키워드

1. ADD : 새로운 속성 추가

2. ALTER : 특정 속성 변경

3. DRIOP COLUMN : 특정 속성 삭제

 

< View 생성 >

● 형식 : CREATE VIEW View명(view 속성들) AS SELECT

 

< INDEX 생성 >

● 형식 : CREATE UNIQUE INDEX 인덱스명 ON 테이블명(속성명 ASC/DESC)

- UNIQUE : 사용시 중복 값 없는 속성으로 인덱스 생성 / 생략시 중복 값 허용하는 속성으로 인덱스 생성

- ASC : 오름차순( 생략시 Default )

 

[ DCL ]

< 권한 부여 >

GRANT 사용자등급 TO 사용자 ID

< 테이블/속성에 대한 권한 부여 >

GRANT 권한종류 ON 테이블명/속성명 TO 사용자 ID ( WITH GRANT OPTION ( 생략가능 ))

- 권한종류 : ALL, SELECT, INSERT, DELETE, UPDATE, ALTER

- WITH GRANT OPTION : 부여받은 권한을 다른 사용자에게 부여할 수 있는 권한

 

< 권한 취소 >

REVOKE 사용자등급 FROM 사용자 ID

< 테이블/속성에 대한 권한 취소 >

REVOKE GRANT OPTION FOR 권한종류 ON 테이블명/속성명 FROM 사용자 ID

- GRANT OPTION FOR : 다른 사용자에게 권한을 부여할 수 있는 권한

 

< COMMIT >

DB가 일관성 상태를 가지기 위해 변경된 모든 내용 반영

 

< ROLLBACK >

변경된 모든 내용들을 취소하고 DB를 이전 상태로 되돌림

● 사용법 : ROLLBACK TO 되돌릴시간

 

< SAVEPOINT >

트랜잭션 내 ROLLBACK 할 위치 지정

 

< GROUP BY HAVING >

그룹화 할 때 사용, HAVING : 그룹에 대한 조건 지정

 

< IN 사용법 >

SELECT * FROM 테이블명 WHERE 속성명 = 조건1 OR 속성명 = 조건2;

=

SELECT * FROM 테이블명 WHERE 속성명 IN ( 조건1, 조건2 );

 

< 프로시저 >

● 스토어드 프로시저

● 호출을 통해 미리 저장해 놓은 SQL 작업 실행

● 생성 : CREATE ( OR REPLACE ) PROCEDURE 프로시저명( 파라미터 ) ( 지역변수 선언 ) BEGIN - END;

-> OR REPLACE : 동일한 프로시저 이름이 이미 존재할 경우, 기존 프로시저를 대체 가능

-> 파라미터 : 변수명 IN 데이터형

● 실행 : EXECUTE, EXEC, CALL

 

< 트리거 >

● 이벤트 발생 시 관련 작업 자동 수행

● 생성 : CREATE ( OR REPLACE ) TRIGGER 트리거명( 동작시기 )( 동작옵션 ) ON 테이블명 REFERENCING ( NEW/OLD ) AS 테이블명 FOR EACH ROW BEGIN -END;

-> 동작시기 : AFTER - 테이블이 변경된 후 트리거 실행 / BEFORE - 테이블이 변경되기 전 트리거 실행

-> 동작옵션 : INSERT, DELETE, UPDATE

-> NEW : 추가되거나 수정에 참여할 튜플들의 집합

-> OLD : 수정되거나 삭제 전 대상이 되는 튜플들의 집합

 

< 사용자 정의 함수 >

● 일련의 작업 연속 처리, 단일값 리턴

● 생성 : CREATE ( OR REPLACE ) FUNCTION 사용자정의함수명( 파라미터 ) ( 지역변수 선언 ) BEGIN - END;

  프로시저 사용자 정의 함수
반환값 없거나 1개 이상 1개
파라미터 입/출력 입력만
사용 가능 명령문 DML, DCL SELECT
호출 프로시저, 사용자 정의 함수 사용자 정의 함수
사용방법 실행문 DML에 포함

 

< 커서 >

쿼리문의 처리 결과가 저장된 메모리 공간을 가리키는 포인터

● 묵시적 커서 : 자동 생성

- SQL%FOUND : 쿼리 수행 결과로 패치된 튜플 수가 1개 이상이면 T

- SQL%NOTFOUND : 쿼리 수행 결과로 패치된 튜플 수가 0개면 T

- SQL%ROWCOUNT : 쿼리 수행 결과로 패치된 튜플 수 반환

● 명시적 커서 : 사용자가 직접 정의

'자격증 > 정보처리기사 - 실기' 카테고리의 다른 글

응용 SW 기초 기술 활용  (0) 2020.10.03
소프트웨어 개발 보안 구축  (0) 2020.10.03
애플리케이션 테스트 관리  (0) 2020.10.01
화면 설계  (0) 2020.10.01
서버 프로그램 구현  (0) 2020.09.30