정답이 있는 데이터베이스와 SQL 학습지

무료 인쇄용 데이터베이스와 SQL 학습지: 쉬운 문제부터 시험 수준까지 8문제, 정답표 포함. 인쇄하거나 PDF로 저장하세요.

교수자 안내: 수업에서 무료로 인쇄, 복사, 사용할 수 있습니다. 새 워크시트마다 값이 새로 바뀌고 별도의 정답이 함께 제공됩니다. 강의 페이지에 ExamProblems 링크를 걸어 주시면 감사하겠습니다.

이름: ____________________   날짜: ____________

1.쉬움

대리 키(surrogate key)란 무엇입니까?

  1. A자동 증가 id처럼 업무상 의미가 없는 인위적 식별자
  2. B뷰에서만 사용하는 키
  3. C다른 테이블을 참조하는 키
  4. D이메일 주소처럼 실세계 데이터로 만든 키
2.쉬움

구조를 포함하여 테이블 전체를 삭제하는 문은 무엇입니까?

  1. ADROP TABLE
  2. BDELETE FROM
  3. CTRUNCATE ROWS
  4. DREMOVE TABLE
3.쉬움

UNION ALL은 UNION과 어떻게 다릅니까?

  1. AUNION ALL은 중복 행을 제거한다
  2. BUNION ALL은 중복 행을 유지한다
  3. CUNION ALL은 한 테이블에서만 작동한다
  4. DUNION ALL은 결과를 정렬한다
4.보통

동시 트랜잭션이 서로의 완료되지 않은 변경을 보지 못한다는 뜻의 ACID 속성은 무엇입니까?

  1. A고립성
  2. B지속성
  3. C원자성
  4. D가용성
5.보통

두 SELECT 쿼리 사이에 사용한 INTERSECT는 무엇을 반환합니까?

  1. A결과들의 카티션 곱
  2. B두 결과의 모든 행
  3. C첫 번째 결과에는 있지만 두 번째에는 없는 행
  4. D두 결과 모두에 나타나는 행
6.보통

ROLLBACK TO SAVEPOINT s1은 무엇을 합니까?

  1. A트랜잭션 전체를 처음부터 취소한다
  2. B세이브포인트 s1 이후의 변경을 취소하고 트랜잭션은 열어 둔다
  3. C세이브포인트와 그 이후 변경된 모든 테이블을 삭제한다
  4. D트랜잭션을 끝내고 모든 것을 커밋한다
7.어려움

쿼리 FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.status = 'paid'가 예상과 달리 주문이 없는 고객을 빠뜨립니다. 왜 그렇습니까?

  1. ALEFT JOIN은 일치하지 않는 행을 결코 유지하지 않기 때문에
  2. Bstatus가 예약어이기 때문에
  3. Co에 대한 WHERE 조건이 NULL로 채워진 행을 거부하여 내부 조인으로 바꾸기 때문에
  4. D조인에 ON 대신 USING을 써야 하기 때문에
8.어려움

다중 버전 동시성 제어(MVCC)에서 읽는 쪽은 어떻게 쓰는 쪽을 막지 않을 수 있습니까?

  1. A읽는 쪽은 커밋되지 않은 데이터를 직접 읽는다
  2. B읽는 쪽은 커밋된 행 버전의 일관된 스냅샷을 보고, 쓰는 쪽은 새 버전을 만든다
  3. C읽는 쪽이 활성 상태인 동안에는 쓰기가 허용되지 않는다
  4. D읽는 쪽은 항상 모든 쓰는 쪽이 커밋할 때까지 기다린다

정답표

  1. 1. A · 자동 증가 id처럼 업무상 의미가 없는 인위적 식별자
  2. 2. A · DROP TABLE
  3. 3. B · UNION ALL은 중복 행을 유지한다
  4. 4. A · 고립성
  5. 5. D · 두 결과 모두에 나타나는 행
  6. 6. B · 세이브포인트 s1 이후의 변경을 취소하고 트랜잭션은 열어 둔다
  7. 7. C · o에 대한 WHERE 조건이 NULL로 채워진 행을 거부하여 내부 조인으로 바꾸기 때문에
  8. 8. B · 읽는 쪽은 커밋된 행 버전의 일관된 스냅샷을 보고, 쓰는 쪽은 새 버전을 만든다

자세한 단계별 풀이: examproblems.com에서 이 주제를 연습하세요.