41. 데이터 모델의 구성 요소가 아닌 것은?
- 속성(Attribute)
- 연산(Operation)
- 관계(Relationship)
- 개체(Entity)
✅ 데이터 모델이란?
현실 세계의 데이터를 데이터베이스에 표현하기 위한 개념적인 틀입니다.
즉, "어떤 데이터를 어떤 구조로 저장하고, 어떻게 연결되는지를 정의"하는 설계 도구예요.
📌 데이터 모델의 3대 구성 요소
| 1. 개체(Entity) | 정보를 저장할 수 있는 객체 (사람, 사물, 개념 등) | 학생, 도서, 주문 |
| 2. 속성(Attribute) | 개체의 특성이나 상태를 나타내는 정보 | 이름, 생년월일, 가격 |
| 3. 관계(Relationship) | 개체 간의 논리적 연관성 | 학생-수강, 고객-주문 |
➡️ 이 3가지는 **ER 모델(Entity-Relationship Model)**에도 그대로 등장합니다.
❌ 왜 "연산(Operation)"은 아닌가?
- 연산은 데이터 모델의 기능적 측면을 다루는 요소로,
- 구성 요소가 아니라 그 위에서 수행되는 작업입니다.
- 예: 삽입(Insert), 검색(Select), 삭제(Delete)
따라서 "데이터 모델의 구성 요소"에는 포함되지 않습니다.
🔍 정리
| 속성(Attribute) | 개체의 특성 | ✅ 포함 |
| 연산(Operation) | 데이터를 조작하는 기능 | ❌ 비포함 |
| 관계(Relationship) | 개체 간의 연결 | ✅ 포함 |
| 개체(Entity) | 현실 세계의 객체 | ✅ 포함 |
42. 시스템 카탈로그에 대한 설명으로 옳지 않은 것은?
- 사용자, 객체에 대한 정의나 명세에 관한 정보를 유지 관리하는 시스템 테이블이다
- 일반 이용자도 SQL을 이용하여 내용을 검색하거나 수정할 수 있다
- dbms가 스스로 생성하고 유지한다
- 데이터 디렉터리,번역기, 질의 최적화기 등으로 구성된다
✅ 시스템 카탈로그(System Catalog)란?
DBMS가 데이터베이스를 관리하기 위해 내부적으로 유지하는 메타데이터(데이터에 대한 데이터) 테이블입니다.
쉽게 말하면,
"누가 만들었는지, 어떤 테이블이 있는지, 속성이 뭔지, 인덱스는 어떤지" 등
데이터베이스 내부의 모든 구조 정보를 기록해 놓은 DB의 백과사전입니다.
📌 시스템 카탈로그의 주요 특징
| ✅ DBMS가 스스로 생성하고 유지 | 사용자가 직접 만들지 않아도 자동으로 생성 |
| ✅ 테이블 형태 | 일반 테이블과 비슷하지만 시스템용 |
| ✅ 조회는 가능 | 권한이 있다면 SELECT로 일부 내용 읽기만 가능 |
| ❌ 수정은 불가 | 직접 UPDATE, DELETE 등으로 수정할 수 없음 (시스템 무결성 보장을 위해) |
📌 보기별 정오 분석
| 사용자, 객체에 대한 정의나 명세에 관한 정보를 유지 관리하는 시스템 테이블이다 | ✔ 예: 테이블 이름, 열 정보, 사용자 정보 등 저장 | ✅ 옳음 |
| 일반 이용자도 SQL을 이용하여 내용을 검색하거나 수정할 수 있다 | ❌ 검색(조회)는 제한적으로 가능, 수정은 불가능 | ❌ 틀림 |
| DBMS가 스스로 생성하고 유지한다 | ✔ DB 설치 시 자동 생성, 사용자가 관리 안 함 | ✅ 옳음 |
| 데이터 디렉터리, 번역기, 질의 최적화기 등으로 구성된다 | ✔ 시스템 구성 요소로 포함됨 | ✅ 옳음 |
🎯 정리
| 일반 사용자 SELECT | 제한적으로 가능 (읽기 전용, 권한 필요) |
| INSERT / UPDATE / DELETE | 불가 (DBMS가 직접 유지) |
43. 관계대수에 대한 설명으로 옳지 않은 것은?
- 원하는 릴레이션을 정의하는 방법을 제공하며 비절차적 언어이다
- 릴레이션 조작을 위한 연산의 집합으로 피연산자와 결과가 모두 릴레이션이다
- 일반 집합 연산과 순수관계 연산으로 구분된다
- 질의에 대한 해를 구하기 위해 수행해야 될 연산의 순서를 명시한다
🌱 그럼 쉽게 하나씩 설명해볼게!
🧠 먼저, 관계대수가 뭐야?
- 데이터베이스에서 **테이블(릴레이션)**을 계산하고 조작하기 위한 방법이야.
- 예를 들어:
- "성적이 90점 이상인 학생만 뽑기"
- "학생과 수업 테이블을 합쳐서 어떤 수업을 누가 듣는지 보기"
→ 이런 걸 하기 위한 연산 공식 모음이 바로 관계대수야!
🎯 핵심 포인트: 관계대수는 어떻게 계산할지(=순서까지) 직접 써야 돼
그래서 관계대수는 아래처럼 절차적 언어 (Procedural) 라고 불러.
- 예시:
→ "먼저 조건을 걸고 → 그 결과에서 원하는 열만 뽑아라!"
→ 이 순서를 명시해야 함!
✖️ 틀린 보기 설명
❌ "관계대수는 비절차적 언어이다"
이건 잘못된 설명이야.
- 관계대수는 절차적 언어야!
→ 순서를 명확히 써야 하거든.
👀 정리해서 보기 쉽게!
| ✅ "릴레이션(테이블)을 다루는 연산이며, 결과도 릴레이션이다" | 맞음 | 결과도 테이블이야 |
| ✅ "일반 집합 연산(합집합, 교집합 등)과 순수 관계 연산(조인, 선택 등)이 있다" | 맞음 | 종류가 다양해 |
| ✅ "연산 순서를 정해서 원하는 결과를 얻는다" | 맞음 | 순서 중요함! |
| ❌ "비절차적 언어이다" | 틀림! | 절차적 언어야! 순서 중요함 |
💡 헷갈리는 개념 정리
| 뭐냐면? | 어떻게 계산할지 하나하나 적는 방법 | 무엇을 얻고 싶은지 조건만 적는 방법 |
| 예시 | 먼저 조건 걸고 → 열 뽑아! | 조건만 쓰면 알아서 계산돼 |
44. DML해당 하는것
- SELECT
- UPDATE
- INSERT
- GRANT
📌 SQL 언어의 5가지 분류
SQL은 목적에 따라 크게 다섯 가지로 나뉘어요:
| DDL (데이터 정의어) | 테이블이나 데이터베이스의 구조를 정의 | CREATE, DROP, ALTER |
| DML (데이터 조작어) | 테이블에 데이터를 삽입, 조회, 수정, 삭제 | ✅ SELECT, INSERT, UPDATE, DELETE |
| DCL (데이터 제어어) | 권한 부여/취소와 관련된 명령어 | ❌ GRANT, REVOKE |
| TCL (트랜잭션 제어어) | 트랜잭션의 저장/취소 등 제어 | COMMIT, ROLLBACK, SAVEPOINT |
| DQL (데이터 질의어) | SELECT만 따로 보는 분류로, 일부 문헌에서 DML과 분리함 | SELECT |
45. 개체 관계 모델에 대한 설명으로 옳지 않은 것은?
- 오너-멤버(Owner-Member) 관계라고도 한다
- 개체 타입과 이들 간의 관계 타입을 기본 요소로 이용하여 현실 세계를 개념적으로 표현
- E-R 다이어그램에서 개체 타입은 사각형으로 나타낸다
- E-R 다이어그램에서 속성은 타원으로 나타낸다
- **“오너-멤버(Owner-Member) 관계”**는 네트워크 데이터 모델의 용어입니다.
→ 즉, **개체 관계 모델(E-R 모델)**과는 다른 개념이에요. - E-R 모델은 현실 세계를 **개체(Entity)**와 관계(Relationship) 중심으로 표현하지만,
네트워크 모델은 데이터를 소유자(owner)와 멤버(member)의 관계로 표현합니다.
📘 개체-관계 모델(Entity-Relationship Model, ER 모델)이란?
현실 세계를 데이터베이스로 표현할 때,
**“무엇(개체)”**과 **“그 사이의 관계”**를 **도형(다이어그램)**으로 나타내는 개념적 모델입니다.
📌 ER 모델의 기본 요소
| 개체(Entity) | 사람, 사물, 사건 등 | ⬛ 사각형 |
| 속성(Attribute) | 개체의 특징 | 🔵 타원 |
| 관계(Relationship) | 개체 간의 연결 | ◆ 마름모 |
| 키(Key) | 유일하게 구분할 수 있는 속성 | 밑줄 친 속성으로 표현 |
보기별 정오 판단
| 오너-멤버(Owner-Member) 관계라고도 한다 | ❌ 네트워크 모델 용어임. E-R 모델과 관련 없음 | ❌ 틀림 |
| 개체 타입과 이들 간의 관계 타입을 기본 요소로 이용하여 현실 세계를 개념적으로 표현 | ✔ ER 모델의 정의 | ✅ 맞음 |
| E-R 다이어그램에서 개체 타입은 사각형으로 나타낸다 | ✔ 학생, 도서 같은 개체를 사각형으로 표현 | ✅ 맞음 |
| E-R 다이어그램에서 속성은 타원으로 나타낸다 | ✔ 이름, 나이 같은 속성은 타원으로 표현 | ✅ 맞음 |
✅ 요약
- ❌ 오너-멤버 → 네트워크 모델 용어
- ✅ E-R 모델은 개체, 속성, 관계를 도형으로 표현하는 개념 모델

46. 릴레이션에 R1에 속한 에튜리뷰트 조합인 외래키를 변경하려면 이를 참조하고 있는 R2의 릴레이션의 기본키도 변경해야 하는데 이를 무엇이라고 하는가?
- 정보 무결성
- 고유 무결성
- 키 제약성
- 참조 무결성
✅ 참조 무결성이란?
**외래키(Foreign Key)**로 연결된 두 릴레이션(테이블) 사이에서,
한 테이블의 외래키 값이 참조하는 테이블의 기본키와 항상 일치하도록 유지하는 제약 조건입니다.
📘 문제 상황 정리:
- R1 테이블의 어떤 속성(외래키)이 R2 테이블의 기본키를 참조하고 있음
- 그런데 R2의 기본키 값이 변경되면 → R1의 외래키 값도 같이 바꿔야 함
- 그렇지 않으면, R1의 외래키가 가리키는 값이 없어짐 → 데이터 오류 발생
➡️ 이를 방지하기 위해 외래키는 참조 대상의 기본키와 항상 일치해야 함
→ 이것이 바로 참조 무결성을 지킨다는 뜻입니다
📌 보기별 설명
| 정보 무결성 | 전체 시스템의 데이터가 정확하게 유지되는 총괄 개념 | ❌ 너무 포괄적 |
| 고유 무결성 | 특정 속성은 중복되면 안 됨 → 기본키 조건 | ❌ 중복 금지에 해당 |
| 키 제약성 | 기본키 또는 후보키가 반드시 유일하고 NULL 불가 | ❌ 키 자체에 대한 제약 |
| 참조 무결성 | 외래키는 참조 대상(기본키)과 일치해야 함 | ✅ 정답 |
47.

✅ 정답:
트리의 차수는 3
→ 가장 자식이 많은 노드 B가 자식 3명을 가졌기 때문입니다.
48. 정규화 과정 중 1NF에서 2NF가 되기 위한 조건은?
- 1NF를 만족하고 모든 도메인이 원자 값이어야 한다
- 1NF를 만족하고 키가 아닌 모든 애트리뷰트들이 기본키에 이행적으로 함수 종속되지 않아야한다
- 1NF를 만족하고 다치종속이 제거되어야 한다
- 1NF를 만족하고 키가 아닌 모든 속성이 기본키에 완전 함수적 종속되어야 한다
단계 의미 주요 목표
| 1NF (제1정규형) | 모든 도메인이 **원자값(Atomic value)**만 가지도록 | 중첩/반복 컬럼 제거 |
| 2NF (제2정규형) | 1NF 만족 + 완전 함수 종속(Full Functional Dependency) | 부분 함수 종속 제거 |
| 3NF (제3정규형) | 2NF 만족 + 이행적 종속 제거 | 이행 종속 제거 |
49. 병행제어 기법 중 로킹에 대한 설명으로 옳지 않은 것은?
- 로킹의 대상이 되는 객체의 크기를 로킹 단위라고 한다
- 데이터베이스, 파일, 레코드 등은 로킹 단위가 될 수 있다
- 로킹의 단위가 작아지면 로킹 오버헤드가 증가한다
- 로킹의 단위가 커지면 데이터베이스 공유도가 증가한다
📌 병행제어(Concurrency Control)와 로킹(Locking)
여러 사용자가 동시에 데이터베이스에 접근할 때,
데이터 무결성 보장과 충돌 방지를 위해 데이터에 잠금(Lock)을 거는 기법입니다.
✅ 보기별 해설
| 로킹의 대상이 되는 객체의 크기를 로킹 단위라고 한다 | ✔ 예: DB 전체, 테이블, 레코드, 필드 등 | ✅ 맞음 |
| 데이터베이스, 파일, 레코드 등은 로킹 단위가 될 수 있다 | ✔ 일반적인 로킹 대상 | ✅ 맞음 |
| 로킹의 단위가 작아지면 로킹 오버헤드가 증가한다 | ✔ 더 많은 객체에 개별적으로 Lock을 걸기 때문 | ✅ 맞음 |
| 로킹의 단위가 커지면 데이터베이스 공유도가 증가한다 | ❌ 오히려 공유도는 감소함 (잠금 범위가 커지므로 다른 트랜잭션이 접근 불가한 영역이 커짐) | ❌ 틀림 |
🎯 정리
| 작을수록 | 더 세분화된 객체에 Lock | 공유도 ↑ | 오버헤드 ↑ |
| 클수록 | 넓은 범위에 Lock | 오버헤드 ↓ | 공유도 ↓ (정답 보기의 반대) |
50. 파티션에 대한 설명으로 틀린 것은?
- 파티셔닝으로 인해 쿼리 성능은 향상되지만, 백업 및 복구 속도는 느려진다
- 파티셔닝된 테이블은 물리적으로 별도의 세그먼트에 저장된다
- 파티션은 하나의 테이블을 작은 논리적 단위로 나눈 것이다
- 파티셔닝을 수행하면 데이터 가용성이 향상된다
✅ 파티셔닝(Partitioning)이란?
하나의 테이블을 여러 개의 논리적·물리적 단위로 나누는 것입니다.
주로 성능 향상, 관리 용이성, 가용성 향상을 위해 사용됩니다.
📌 보기별 해설
| 파티셔닝으로 인해 쿼리 성능은 향상되지만, 백업 및 복구 속도는 느려진다 | ❌ ❗ 파티셔닝을 하면 백업/복구를 파티션 단위로 병렬 처리할 수 있어 오히려 빨라지는 경우가 많음 | ❌ 틀림 |
| 파티셔닝된 테이블은 물리적으로 별도의 세그먼트에 저장된다 | ✔ 예: Oracle 등에서 파티션마다 다른 세그먼트로 관리됨 | ✅ 맞음 |
| 파티션은 하나의 테이블을 작은 논리적 단위로 나눈 것이다 | ✔ 파티션 = 테이블 내부의 논리적 하위 구조 | ✅ 맞음 |
| 파티셔닝을 수행하면 데이터 가용성이 향상된다 | ✔ 일부 파티션 장애 시 전체 테이블에 영향 없이 일부만 복구 가능 | ✅ 맞음 |
💡 파티셔닝의 효과 요약
| ✅ 쿼리 성능 | 필요한 파티션만 조회 → 성능 향상 (파티션 프루닝) |
| ✅ 백업/복구 | 파티션 단위로 병렬 백업 가능 → 속도 ↑ |
| ✅ 관리성 | 오래된 파티션만 드롭하거나 보관 가능 |
| ✅ 가용성 | 전체가 아닌 부분 장애로 범위 제한 가능 |
51. 다음 SQL문에서 괄호 안에 들어갈 내용으로 옳은 것은?

UPDATE MEMBER
SET GRADE = 'GOLD'
WHERE POINT >= 1000;
52. 분산 데이터베이스 목표 중 "데이터베이스의 분산된 물리적 환경에서 특정 지역의 컴퓨터 시스템이나 네트워크에 장애가 발생해도 데이터 무결성이 보장된다."는 것과 관계있는 것은?
- 장애 투명성
- 병행 투명성
- 위치 투명성
- 중복 투명성
투명성 종류 설명 관련 키워드
| ✅ 장애 투명성 | 일부 시스템이나 네트워크 장애 발생 시에도 전체 시스템의 데이터 무결성과 일관성 유지 | 복구, 장애 허용, 백업 |
| 병행 투명성 | 여러 사용자가 동시에 접근해도 일관된 결과 보장 | 동시성 제어, 트랜잭션 |
| 위치 투명성 | 사용자가 데이터가 실제 어디에 있는지 모르게 함 | 경로 숨김 |
| 중복 투명성 | 데이터가 여러 장소에 복제돼 있어도 사용자에겐 하나처럼 보임 | 복제, 동기화 |
53. 데이터베이스 설계 단계와 그 단계에서 수행되는 작업의 연결이 잘못된 것은?
- 요구 조건 분석 - 트랜잭션 모델링
- 물리적 설계 단계 - 목표 DBMS에 맞는 물리적 구조 설계
- 논리적 설계 단계 = 목표 DBMS에 종속적인 논리 스키마 설계
- 구현 단계 - 목표 DBMS DDL로 스키마 작성
✅ 각 설계 단계별 주요 작업
| 요구 조건 분석 | 사용자 요구 분석, 트랜잭션 도출 | ❌ 없음 |
| 개념적 설계 | ER 모델 작성 (개체, 관계, 속성 등) | ❌ 없음 |
| 논리적 설계 | 정규화, 릴레이션 스키마 작성 | ❌ 없음 |
| 물리적 설계 | 인덱스, 테이블스페이스, 파티션 등 최적화 설계 | ✅ 있음 |
| 구현 단계 | 실제 DDL(SQL)을 사용하여 DB 생성 | ✅ 있음 |
🔍 보기 분석
| 요구 조건 분석 - 트랜잭션 모델링 | ✔ 사용자의 처리 요구를 모델링 | ✅ 맞음 |
| 물리적 설계 - DBMS에 맞는 물리적 구조 설계 | ✔ 인덱스, 파티셔닝 등 포함 | ✅ 맞음 |
| 논리적 설계 = 목표 DBMS에 종속적인 논리 스키마 설계 | ❌ 논리적 설계는 DBMS에 독립적이어야 함 | ❌ 틀림 |
| 구현 단계 - 목표 DBMS DDL로 스키마 작성 | ✔ 실제 SQL 문으로 구현 | ✅ 맞음 |
✅ 정답 요약:
논리적 설계는 DBMS에 종속되지 않는다 → 따라서
**"논리적 설계 = 목표 DBMS에 종속적인 논리 스키마 설계"**는 틀린 설명입니다.
나의 말:
ChatGPT의 말:
좋은 질문이에요! 아주 쉽게 설명드릴게요.
✅ DBMS란?
Database Management System의 줄임말로,
**"데이터베이스를 만들고, 저장하고, 수정하고, 검색하는 일을 도와주는 프로그램"**이에요.

4번이 정답
55. 분산 데이터베이스의 장점으로 거리가 먼것은?
- 지역 자치성이 높다
- 잠재적 오류가 감소한다
- 분산 제어가 가능하다
- 효용성과 융통성이 높다
✅ 분산 데이터베이스란?
데이터베이스가 **여러 지역(노드)**에 나뉘어 저장되어 있지만, 사용자 입장에서는 하나의 통합된 시스템처럼 작동하는 구조입니다.
📌 분산 DBMS의 주요 장점
| ✅ 지역 자치성 | 각 지역 시스템이 독립적으로 동작 가능 (예: 지점 단위 시스템) |
| ✅ 분산 제어 가능 | 지역별 트랜잭션/데이터 제어 가능 |
| ✅ 효용성과 융통성 | 다양한 네트워크 환경에서도 데이터 활용 가능, 확장성 우수 |
❌ “잠재적 오류가 감소한다”가 왜 틀렸을까?
- 분산 환경에서는 다음과 같은 오류 가능성이 오히려 증가합니다:
- 네트워크 오류
- 노드 간 동기화 문제
- 트랜잭션 충돌
- 중복 데이터 관리 이슈
즉, 오류를 줄이는 게 아니라 오히려 오류 가능성은 더 많아짐
→ 그래서 장애 투명성, 트랜잭션 처리, 복제 관리 등이 더 복잡해짐
🧠 결론
| 지역 자치성이 높다 | ✔ 각 지점이 독립적으로 운영 가능 | ✅ |
| 잠재적 오류가 감소한다 | ❌ 네트워크 분산 구조는 오히려 오류 가능성을 증가시킴 | ❌ 정답 |
| 분산 제어가 가능하다 | ✔ 지역 시스템에 맞는 제어 가능 | ✅ |
| 효용성과 융통성이 높다 | ✔ 확장성, 유연성 우수 | ✅ |
56. 다음 문장의 ()안 내용으로 공통 적용될 수 있는 가장 적절한 내용은 무엇인가?
"관계형 데이터 모델에서 한 릴레이션의 ()는 참조되는 릴레이션의 기본키와 대응되어 릴레이션간에 참조 관계를 표현하는데 사용되는 중요한 도구이다.
()를 포함하는 릴레이션이 참조하는 릴레이션이 되고, 대응되는 기본 키를 포함하는 릴레이션이 참조 릴레이션이 된다."
- 후보키
- 대체키
- 외래키
- 수퍼키
용어 설명
| 후보키(Candidate Key) | 기본키로 선택될 수 있는 후보들 |
| 기본키(Primary Key) | 후보키 중 하나, 레코드 유일 식별 |
| 대체키(Alternate Key) | 후보키 중 기본키로 선택되지 않은 나머지 |
| 수퍼키(Super Key) | 유일성을 만족하는 모든 키 집합 (불필요한 속성 포함 가능) |
| ✅ 외래키(Foreign Key) | 다른 테이블의 기본키를 참조하여 관계를 맺는 키 |
57. 다음중 트리거에 대한 설명으로 틀린 것은?
- 데이터 변경 및 무결성 유지, 로그 메시지 출력 등의 목적으로 사용된다
- 트리거의 생성문에는 반드시 값을 반환하는 RETURN 명령어가 사용되어야 한다
- 데이터의 삽입, 갱신, 삭제 등의 이벤트가 발생할 때마다 관련 작업이 자동으로 수행되는 절차형 SQL이다
- CREATE TRIGGER 명령어를 통해 생성된다
✅ 트리거(Trigger)란?
테이블에 데이터 변경 이벤트가 발생할 때 자동으로 실행되는 SQL 블록입니다.
→ INSERT, UPDATE, DELETE 같은 이벤트가 발생하면 미리 정해둔 로직이 자동 실행됩니다.
보기 설명 정오
| ✅ 데이터 변경 및 무결성 유지, 로그 메시지 출력 등의 목적으로 사용된다 | 트리거의 일반적인 용도 | ✅ 맞음 |
| ❌ 트리거의 생성문에는 반드시 값을 반환하는 RETURN 명령어가 사용되어야 한다 | 트리거는 값을 반환하지 않음! → RETURN은 함수에서 사용되는 문법임 | ❌ 틀림 |
| ✅ 데이터의 삽입, 갱신, 삭제 등의 이벤트가 발생할 때마다 관련 작업이 자동으로 수행되는 절차형 SQL이다 | 트리거는 이벤트 기반으로 자동 실행됨 | ✅ 맞음 |
| ✅ CREATE TRIGGER 명령어를 통해 생성된다 | SQL에서 트리거 정의 시 사용 | ✅ 맞음 |
58. 데이터베이스의 특성으로 옳은 내용
ㄱ 실시간 접근성
ㄴ 계속적인 변화
ㄷ 동시 공용
ㄹ 내용에 의한 참조
📘 하나씩 설명해볼게요:
| ㄱ. 실시간 접근성 | 사용자가 원할 때 즉시 데이터를 검색하거나 조작할 수 있음 (온라인 시스템) | ✅ 맞음 | |
| ㄴ. 계속적인 변화 | 데이터는 입력, 수정, 삭제 등으로 인해 계속 변화함 | ✅ 맞음 | |
| ㄷ. 동시 공용 (Concurrent Use) | 여러 사용자가 동시에 같은 데이터베이스에 접근할 수 있음 → 병행 제어가 필요함 | ✅ 맞음 | |
| ㄹ. 내용에 의한 참조 | 저장된 주소(location)가 아니라 데이터의 내용 값으로 검색 가능 (예: WHERE 이름 = '철수') | ✅ 맞음 |
59. DBMS의 필수 기능 중 사용자와 데이터베이스 사이의 인터페이스 수단을 제공하는 기능은
- Definition
- Control
- Manipulation
- Strategy
✅ DBMS의 3대 필수 기능
| Definition (정의) | 데이터 구조를 정의하는 기능 → 테이블, 속성 등 | DDL (CREATE, ALTER 등) |
| Manipulation (조작) | 사용자가 데이터를 입력/조회/수정/삭제할 수 있도록 인터페이스 제공 | ✅ DML (SELECT, INSERT, UPDATE, DELETE) |
| Control (제어) | 보안, 권한, 트랜잭션, 동시성 등 관리 기능 | DCL, 트랜잭션 제어 (GRANT, COMMIT 등) |
→ 즉, 사용자가 **데이터를 실제로 다루는 부분(조작)**은 Manipulation 기능에 해당합니다.
❌ 보기 중 오답 설명
| Definition | 구조 정의(DDL), 테이블 설계 등 → 사용자 인터페이스 아님 |
| Control | 보안, 권한, 무결성 제어 등 시스템적인 관리 기능 |
| Strategy | 일반적인 DBMS 기능 구분 용어에 해당하지 않음 (오답 유도용) |
60. 뷰(View)에 대한 설명으로 옳지 않은 것은?
- CREATE 문을 사용하여 정의
- 데이터의 논리적 독립성을 제공
- 제거할 때에는 DROP 문 사용
- 저장장치 내에 물리적으로 존재
✅ 뷰(View)란?
**하나 이상의 테이블(실제 테이블)**을 기반으로 만든 가상 테이블입니다.
사용자에게 필요한 정보만 보여주며, 보안, 단순화, 독립성 등을 위해 사용됩니다.
📌 보기별 설명
| CREATE 문을 사용하여 정의 | ✔ CREATE VIEW로 정의함 | ✅ 맞음 |
| 데이터의 논리적 독립성을 제공 | ✔ 실제 테이블 구조와 분리된 인터페이스 제공 | ✅ 맞음 |
| 제거할 때에는 DROP 문 사용 | ✔ DROP VIEW 뷰이름;으로 제거함 | ✅ 맞음 |
| ❌ 저장장치 내에 물리적으로 존재 | ❌ 뷰는 물리적으로 데이터를 저장하지 않음 (단순히 SELECT 문을 저장한 것) | ❌ 틀림 |
'TIL' 카테고리의 다른 글
| 소프트웨어 설계 - 2024 3회 (0) | 2025.05.10 |
|---|---|
| 정보시스템 구축 관리 - 2024 2회 (1) | 2025.05.09 |
| 소프트웨어 개발 - 2024 2회 (1) | 2025.05.08 |
| 정보시스템 구축 관리 2024 1회 (0) | 2025.04.30 |
| 프로그래밍 언어 활용 - 2024 1회 (0) | 2025.04.30 |