관리 메뉴

나구리의 개발공부기록

CHAPTER 01 - 데이터베이스(기출문제) 본문

2024정보처리기사 준비 정리(필기 - 시나공, 실기 - 수제비)/실기 7강 - SQL 응용

CHAPTER 01 - 데이터베이스(기출문제)

소소한나구리 2024. 6. 30. 23:25

2024년도 수제비 실기책(6판) 내용 정리


1) 트랜잭션의 특성 중 일관성, 지속성 외 2개의 특성을 작성

정답

더보기

1. 원자성 2. 격리성 or 독립성

 

원자성 (Atomicity)

격리성(Isolation)


2) 트랜잭션 원자성에 대해서 설명

정답

더보기

트랜잭션을 구성하는 연산 전체가 모두 정상적으로 실행되거나 취소되어야 하는 성질

or 트랜잭션의 연산 전체가 성공하거나 실패되어야 하는 성질


3) 트랜잭션 Rollback에 대해서 설명

정답

더보기

트랜잭션 처리 중 오류가 발생했을 때 오류 이전의 특정 시점 상태로 되돌려주는 제어어


4) 다음에 해당하는 DB 트랜잭션 연산을 [보기]에서 찾아 작성

  1. 장애 발생 전 DB로 복구하는 기법으로 디스크에 저장된 로그를 분석하여 트랜잭션의 시작(Start)과 완료(Commit)에 대한 기록이 있는 트랜잭션들의 작업을 재 실행하는 기법
  2. 장애 시 디스크에 저장된 로그를 분석하여 트랜잭션의 시작(Start)은 있지만, 완료(Commit) 기록이 없는 트랜잭션들이 작업한 변경 내용을 모두 취소하는 기법

보기 : Rollback, Redo, Undo, Checkpoint Recovery, Shadow Paging Recovery

 

정답

더보기

1. Redo 2. Undo


5) 같은 자원을 액세스하는 다중 트랜잭션 환경에서 DB의 일관성과 무결성을 유지하기 위해 트랜잭션의 순차적 진행을 보장하는 직렬화 기법은?

정답

더보기

로킹 or Locking

 

로킹 - 같은 자원을 액세스 하는 다중 트랜잭션 환경에서 DB의 일관성과 무결성을 유지하기 위해 트랜잭션의 순차적 진행을 보장하는 직렬화 기법


6) STUDENT 테이블에 컴퓨터과 학생 50명, 인터넷과 학생 100명, 사무자동화학과 학생 50명의 정보가 저장되어 있을 때, 다음 SQL 문의 실행 결과의 튜플 수는(단, DEPT컬럼은 학과명)?

  1. SELECT DEPT FROM STUDENT;
  2. SELECT DISTINCT DEPT FROM STUDENT;
  3. SELECT COUNT(DISTINCT DEPT) FROM STUDENT WHERE DEPT='컴퓨터과';

정답

더보기

1. 200

2. 3 -> DISTINCT로 중복 학과들이 제거됨

3. 1 -> COUNT를 통해 개수를 반환하기 때문에 튜플이 1개만 출력됨


7) 학생 테이블이 학번 (VARCHAR), 이름(VARCHAR), 학년(NUMBER), 수강과목(VARCHAR), 점수(NUMBER), 연락처(VARCHAR)를 속성으로 가질 때 아래 조건을 만족하는 SQL문을 작성

  • 학생 테이블에서 3,4학년인 학번, 이름을 조회한다
  • IN 연산자를 사용해야 한다

정답

더보기

SELECT 학번, 이름 FROM 학생 WHERE 학년 IN (3, 4);


8) 데이터베이스의 회복(Recovery) 기법 중 Rollback 시 Redo, Undo가 모두 실행 되는 트랜잭션 처리법으로 트랜잭션 수행 중 갱 신 결과를 바로 DB에 반영하는 기법은?

정답

더보기

즉각 갱신 회복 기법


9) STUDENT 테이블의 NAME 속성에 IDX_NAME 이름으로 인덱스 생성하는 SQL문을 작성

정답

더보기

CREATE INDEX IDX_NAME ON STUDENT(NAME);


10) 학생 테이블에서 이름이 민수인 튜플을 삭제하는 SQL문을 작성

정답

더보기

DELETE FROM 학생 WHERE 이름 = '민수';


11) 다음이 설명하는 용어를 작성

  • (         )은/는 데이터베이스에서 <키값, 주소> 형태의 자료구조 이다
  • 데이터베이스 파일 구조에는 순차, (         ), 해싱 접근 방법이 있다

정답

더보기

인덱스 or Index


12) DB스키마에 대해서 서술

정답

더보기

데이터베이스의 구조, 제약조건 등의 정보를 담고있는 기본적인 구조


13) 학생 테이블에 주소 속성을 추가하는 SQL문을 작성

  • (   1   ) TABLE 학생 (    2    ) 주소 VARCHAR(20)

정답

더보기

1. ALTER

2. ADD

 

추가할땐 ADD, 수정할땐 ALTER , 컬럼 삭제할 땐 DROP COLUMN


14) [학생정보] 테이블과 [학과정보] 테이블을 조인하려고 할 때 밑줄 친 곳을 채워 알맞은 쿼리를 작성

  • SELECT 학생정보.학번, 학생정보.이름, 학과정보.학과, 학과정보.지도교수 FROM 학생정보 JOIN 학과정보 __1__ 학생정보.학과 = 학과정보.__2__;

정답

더보기

1. ON

2.학과

 

JOIN 하면 ON


15) 다음 [회원] 테이블에서 회원정보가 N4인 튜플의 전화번호를 수정하는 쿼리의 빈칸을 작성

  • ___1___ 회원 ___2___ 전화번호 ='010-14' WHERE 회원번호 = 'N4';

정답

더보기

1. UPDATE

2. SET


16) 다음 [학생] 테이블을 이용해 이름이 이로 시작하는 학생들에 대해 내림차순으로 정렬하려고 할때 쿼리의 빈칸에 알맞는 키워드를 작성

  • SELECT * FROM 학생 WHERE 이름 LIKE__1__ ORDER BY 이름 __2__;

정답

더보기

1. "이%"

2. DESC


17) 다음 점수에 대해 내림차순 하는 SQL의 괄호(  ) 안에 들어갈 SQL 구문을 작성

  • SELECT NAME, SCORE FROM 성적 (   1   ) BY (   2   ) (    3   );

정답

더보기

1. ORDER

2. SCORE

3. DESC


18) 다음 SQL의 실행 결과를 작성

  • SELECT COUNT(*) CNT FROM SOO CROSS JOIN JEBI WHERE SOO.NAME LIKE JEBI.RULE;

정답

더보기
CNT
5

 

- S% : S로 시작하는 문자열

- %A% : A가 포함된 문자열

- %는 0개 이상의 단어가 일치 되었을 때를 뜻함

- CROSS JOIN은 교차곱처럼 SOPHIA, S% ,SOPHIA %A%, 이런식으로 조인됨


19) GRANT의 기능을 서술

정답

더보기

사용자에게 권한을 부여


20) 다음 TB테이블에 대하여 다음 SQL을 실행하였을 때 [결과]의 괄호(   ) 안에 출력되는 값은?

  • SELECT COUNT(COL2) FROM TB WHERE COL1 IN(2,3) OR COL2 IN(3,5);

정답

더보기
COUNT(COL2)
(    4     )

 

행의 COL1에 2,3이 있거나 COL2에 3,5가 있으면, COL2의 값을 집계해서 반환(NULL은 제외)

 

- COUNT(컬럼명) : 널값 제외 하고 집계

- COUNT(*) : 널값 포함 하여 집계


21) [직원] 테이블과 [부서] 테이블이 다음과 같을 때 다음 쿼리를 수행한 결과를 작성

조건

 

  • [부서] 테이블 생성할 시 부서코드는 PRIMARY KEY로 선언되어있고 CASCADE 함수를 사용
  • [직원] 테이블의 부서코드는 [부서] 테이블의 부서코드를 FOREIGN KEY로 참조함

쿼리

 

  1. SELECT COUNT(DISTINCT 부서코드) FROM 직원;
  2. DELETE FROM 부서 WHERE 부서코드='20';
    SELECT COUNT(DISTINCT 직원코드) FROM 직원'

정답

더보기

1. 3

2. 4


22) [학생] 테이블에서 학생 이름이 '민수'인 튜플을 삭제하는 쿼리 작성

정답

더보기

DELETE FROM 학생 WHERE 이름 = '민수';


23) 다음 스키마와 관련된 내용의 각 괄호안에 알맞은 답을 보기에서 찾아 작성

  • (  1  ) 스키마는 사용자나 개발자의 관점에서 필요로 하는 데이터베이스의 논리적 구조이고, 사용자 뷰를 나타내며, 서브 스키마로 불림
  • (  2  ) 스키마는 데이터베이스의 전체적인 논리적 구조이고, 전체적인 뷰를 나타내고, 개체 간의 관계, 제약조건, 접근 권한, 무결성, 보안에 대해 정의함
  • (  3  ) 스키마는 물리적 저장 장치의 관점에서 보는 데이터베이스 구조이고, 실제로 데이터베이스에 저장될 레코드의 형식을 정의함, 그리고 데이터 항목의 표현 방법, 내부 레코드의 물리적 순서 등을 표현

보기 : 외부, 개념, 내부

 

정답

더보기

1. 외부

2. 개념

3. 내부


24) 다음 [처리 조건]을 만족하는 SQL 문을 완성할 수 있도록 밑줄 안에 들어갈 옵션을 작성

[처리 조건]

 

  • "soojebi" 뷰 테이블 제거
  • "soojebi" 뷰 테이블을 참조하는 테이블도 연쇄적으로 제거

[SQL 문]

 

  • DROP VIEW soojebi __________________________;

정답

더보기

CASCADE


25) [학생] 테이블의 스키마를 이용해 [처리 조건]에 맞는 쿼리문을 작성

[처리 조건]

 

  • 학생 테이블에 학번이 9830287, 이름이 '한국산', 학년이 3, 과목이 '경영학개론', 연락처가 '050-1234-1234'인 학생의 정보를 입력
  • 명령문 마지막의 세미콜론(;)은 생략이 가능
  • 인용 부호가 필요한 경우 작은 따옴표(')를 사용

정답

더보기

INSERT INTO 학생(학번, 이름, 학년, 과목, 연락처) VALUES (9830287, '한국산', 3, '경영학개론', '050-1234-1234');

 

속성의 수와 입력값의 개수가 같으므로 (학번, 이름, ... ) 과같이 속성명은 생략해도 됨


26) 다음 빈칸에 들어갈 UNION 연산에 대한 결괏값을 작성

쿼리

 

  • SELECT A FROM t1 UNION SELECT A FROM t2 ORDER BY A DESC;

정답

더보기

1. A

2. 4

3. 3

4. 2

5. 1