릴레이션에 대한 특성으로 틀린 것은?
1. 한 릴레이션에 포함된 튜플 사이에는 순서가 없다.
2. 한 릴레이션을 구성하는 애트리뷰트 사이에는 순서가 있다.
3. 모든 애트리뷰트 값은 원자값이다.
4. 한 릴레이션에 포함된 튜플들은 서로 유일하다.
외래키(foreign key)와 가장 직접적으로 관련된 제약조건은 어느 것인가?
1. 개체 무결성
2. 도메인 무결성
3. 참조 무결성
4. 관계 무결성
다음 중 SELECT문의 설명으로 옳지 않은 것은?
1. 관계 대수의 실렉션과 의미가 완전히 같다.
2. 관계 데이터베이스에서 정보를 검색하는 SQL문이다.
3. 관계 대수의 실렉션, 프로젝션, 조인 등을 결합한 것이다.
4. 관계 데이터베이스에서 가장 자주 사용된다.
SQL 문장에서 group by 절에 의해 선택된 그룹의 탐색 조건을 지정할 수 있는 것은?
1. having
2. where
3. union
4. join
학생(학번, 이름, 학년, 학과) 릴레이션에서 학번이 1000인 학생을 학생 릴레이션에서 삭제하는 SQL문으로 옳은 것은?
1. DELETE FROM 학생 WHERE 학번=1000;
2. DELETE FROM 학생 IF 학번=1000;
3. DROP FROM 학생 WHERE 학번=1000;
4. DROP FROM 학생 IF 학번=1000;
CREATE TABLE에 대한 설명으로 틀린 것은?
1. 테이블 명 및 해당 테이블에 속하는 칼럼 이름, 데이터 타입 등을 명시한다.
2. PRIMARY KEY 절에서는 기본키 속성을 지정한다.
3. CHECK 절은 인덱스에 대한 정보를 저장한다.
4. NOT NULL은 널 값을 허용하지 않을 때 지정한다.
데이터 모델에 관한 설명 중 옳지 않은 것은?
1. 관계 데이터 모델은 개체와 관계 모두가 테이블로 표현된다.
2. 계층 데이터베이스는 부자 관계(parent-child relationship)를 나타내는 트리 형태의 자료 구조로 표현된다.
3. 네트워크 데이터베이스는 오너-멤버 관계(owner-member relationship)를 나타내는 트리 구조로 표현된다.
4. 데이터 모델은 데이터, 데이터의 관계, 데이터의 의미 및 일관성 제약 조건 등을 기술하기 위한 개념적 도구들의 모임이다.
사원(사원번호, 사원이름, 직급, 급여, 부서번호) 릴레이션에서 급여가 NULL 이거나 3000000원 이상인 사원의 이름과 급여를 검색하는 SQL문으로 옳은 것은?
1. SELECT 사원이름, 급여 FROM 사원 WHERE 급여 ⟩= 3000000 OR 급여 IS NULL;
2. SELECT 사원이름, 급여 FROM 사원 WHERE 급여 ⟩= 3000000 OR 급여 = NULL;
3. SELECT 사원이름, 급여 FROM 사원 WHERE 급여 ⟩= 3000000 AND 급여 = NULL;
4. SELECT 사원이름, 급여 FROM 사원 WHERE 급여 ⟩= 3000000 AND 급여 IS NULL;
데이터베이스의 구성 요소 중 개체(Entity)에 대한 설명으로 적합하지 않은 것은?
1. 속성들이 가질 수 있는 모든 값들의 집합이다.
2. 데이터베이스에 표현하려고 하는 현실 세계의 대상체이다.
3. 유형, 무형의 정보로서 서로 연관된 몇 개의 속성으로 구성된다.
4. 파일의 레코드에 대응하는 것으로 어떤 정보를 제공하는 역할을 수행한다.
릴레이션에서 기본 키를 구성하는 속성값으로 널(NULL) 값이나 중복 값을 가질 수 없다는 것을 의미하는 것은?
1. 참조 무결성 제약 조건
2. 도메인 무결성 제약 조건
3. 관계 무결성 제약 조건
4. 개체 무결성 제약 조건
하나의 전문적인 목적보다는 여러 가지 복합적이고 광범위한 의사결정 목적을 위해 통합적인 기능을 수행하는 시스템은 다음 중 무엇인가?
1. 데이터베이스 시스템
2. 클라이언트-서버 시스템
3. 의사 결정 지원 시스템
4. 데이터 마이닝
학생 테이블에서 학번이 300인 학생의 학년을 3으로 수정하기 위한 SQL문으로 옳은 것은?
1. UPDATE 학년=3 FROM 학생 WHERE 학번=300;
2. UPDATE 학생 SET 학년=3 WHERE 학번=300;
3. UPDATE FROM 학생 SET 학년=3 WHERE 학번=300;
4. UPDATE 학년=3 SET 학생 WHEN 학번=300;
데이터베이스의 특성으로 거리가 먼 것은?
1. 데이터베이스는 데이터의 대규모 저장소로서 여러 사용자에 의해 동시에 사용된다.
2. 데이터 참조는 데이터베이스에 저장된 데이터 값에 의해서가 아니라, 사용자가 요구하는 레코드들의 위치나 주소에 의해 참조된다.
3. 데이터베이스는 수시적이고 비정형적인 질의에 대하여 실시간 처리로 빠른 응답이 가능해야 한다.
4. 새로운 데이터의 삽입, 삭제, 갱신으로 항상 최신의 데이터를 유지해야 한다.
관계형 데이터베이스에서 사용되는 키(key)에 대한 설명으로 틀린 것은?
1. 후보키 : 개체들을 고유하게 식별할 수 있는 속성
2. 슈퍼키 : 릴레이션을 구성하는 속성들 중에서 각 튜플을 유일하게 식별하기 위해 사용되는 하나 이상의 속성들의 집합
3. 외래키 : 참조하는 릴레이션에서 기본키로 사용되는 속성
4. 보조키 : 후보키 중에서 대표로 선정된 키
사원(사원번호, 사원이름, 직급, 급여, 부서번호) 릴레이션에서 부서별 사원수가 2명 이상인 부서번호와 사원 수를 검색하는 SQL문으로 옳은 것은?
1. SELECT 직급, COUNT(*) AS 사원수 FROM 사원 GROUP BY 직급 HAVING COUNT(*) ⟩= 2;
2. SELECT 부서번호, COUNT(*) AS 사원수 FROM 사원 GROUP BY 부서번호 HAVING COUNT(*) ⟩= 2;
3. SELECT 부서번호, COUNT(*) AS 사원수 FROM 사원 GROUP BY 부서번호 WHERE COUNT(*) ⟩= 2;
4. SELECT 부서번호, COUNT(*) AS 사원수 FROM 사원 GROUP BY 직급 WHERE COUNT(*) ⟩= 2;
아래와 같은 EMPLOYEE 릴레이션에서 2번 부서(DNO)에 속하고 급여(SALARY)가 2000000 이상인 사원들을 검색하는 관계 대수식으로 옳은 것은?
1. σDNO = 2 v SALARY ⟩= 200000 (EMPLOYEE)
2. σDNO = 2 ∧ SALARY ⟩= 200000 (EMPLOYEE)
3. σDNO = 2 && SALARY ⟩= 200000 (EMPLOYEE)
4. σDNO = 2 || SALARY ⟩= 200000 (EMPLOYEE)
다음의 수강(학번, 과목번호, 학점) 릴레이션을 생성하는 SQL문으로 옳은 것은?
1. CREATE TABLE 수강(학번 INT NOT NULL, 과목번호 INT, 학점 CHAR(2), PRIMARY KEY(학번) CONSTRAINT FK_수강_학번 FOREIGN KEY (학번) REFERENCES 학생(학번), CONSTRAINT FK_수강_과목번호 FOREIGN KEY (과목번호) REFERENCES 과목(과목번호));
2. CREATE TABLE 수강(학번 INT, 과목번호 INT NOT NULL , 학점 CHAR(2), PRIMARY KEY(과목번호), CONSTRAINT FK_수강_학번 FOREIGN KEY 학번 REFERENCES 학생.학번, CONSTRAINT FK_수강_과목번호 FOREIGN KEY 과목번호 REFERENCES 과목.과목번호);
3. CREATE TABLE 수강(학번 INT NOT NULL, 과목번호 INT NOT NULL , 학점 CHAR(2), PRIMARY KEY(학번, 과목번호), CONSTRAINT FK_수강_학번 FOREIGN KEY(학번) REFERENCES 학생(학번) CONSTRAINT FK_수강_과목번호 FOREIGN KEY(과목번호) REFERENCES 과목(과목번호);
4. CREATE TABLE 수강(학번 INT NOT NULL, 과목번호 INT NOT NULL, 학점 CHAR(2), PRIMARY KEY(학번), PRIMARY KEY(과목번호) CONSTRAINT FK_수강_학번 FOREIGN KEY (학번) REFERENCES 학생(학번), CONSTRAINT FK_수강_과목번호 FOREIGN KEY (과목번호) REFERENCES 과목(과목번호));
다음의 릴레이션에서 8층이나 9층(FLOOR)에서 근무하는 사원들의 이름(EMPNAME)과 직급(TITLE)을 검색하는 SQL문으로 옳은 것은?
1. SELECT EMPNAME, TITLE FROM DEPARTMENT WHERE DNO IN (SELECT DEPTNO FROM EMPLOYEE WHERE FLOOR = 8 OR FLOOR =9);
2. SELECT EMPNAME, TITLE FROM EMPLOYEE WHERE DNO = (SELECT DEPTNO FROM DEPARTMENT WHERE FLOOR = 8 OR FLOOR =9);
3. SELECT EMPNAME, TITLE FROM DEPARTMENT WHERE DNO IN (SELECT DEPTNO FROM EMPLOYEE WHERE FLOOR = 8 OR FLOOR =9);
4. SELECT EMPNAME, TITLE FROM EMPLOYEE WHERE DNO IN (SELECT DEPTNO FROM DEPARTMENT WHERE FLOOR = 8 OR FLOOR =9);
사원(사원번호, 사원이름, 직급, 급여, 부서번호) 릴레이션과 부서(부서번호, 부서이름, 위치) 릴레이션에서 '영업' 부서에 근무하는 사원들이 받는 급여보다 많은 급여('영업' 부서 직원들의 급여들 중 하나보다 많은)를 받는 사원들의 사원번호와 사원이름, 부서이름을 검색하는 SQL문으로 옳은 것은?
1. SELECT 사원번호, 사원이름, 부서이름 FROM 사원, 부서 WHERE 사원.부서번호 = 부서.부서번호 AND 급여 =ALL (SELECT 급여 FROM 사원, 부서 WHERE 사원.부서번호 = 부서.부서번호 AND 부서이름 = '영업');
2. SELECT 사원번호, 사원이름, 부서이름 FROM 사원, 부서 WHERE 사원.부서번호 = 부서.부서번호 AND 부서이름 ⟨⟩ '영업' AND 급여 =ANY (SELECT 급여 FROM 사원, 부서 WHERE 사원.부서번호 = 부서.부서번호 AND 부서이름 = '영업');
3. SELECT 사원번호, 사원이름, 부서이름 FROM 사원, 부서 WHERE 사원.부서번호 = 부서.부서번호 AND 부서이름 ⟨⟩ '영업' AND 급여 ⟩ALL (SELECT 급여 FROM 사원, 부서 WHERE 사원.부서번호 = 부서.부서번호 AND 부서이름 = '영업');
4. SELECT 사원번호, 사원이름, 부서이름 FROM 사원, 부서 WHERE 사원.부서번호 = 부서.부서번호 AND 부서이름 ⟨⟩ '영업' AND 급여 ⟩ANY (SELECT 급여 FROM 사원, 부서 WHERE 사원.부서번호 = 부서.부서번호 AND 부서이름 = '영업');
학생(학번, 학생이름), 수강(학번, 과목번호, 학점), 과목(과목번호, 과목이름) 릴레이션에서 "운영체제" 과목을 수강한 학생의 이름과 학점을 검색하는 SQL문으로 옳은 것은?
1. SELECT S.학생이름, E.학점 FROM 학생 S, 수강 E, 과목 C WHERE (S.학번 = E.학번) OR (E.과목번호 = C.과목번호) AND C.과목이름 = '운영체제';
2. SELECT S.학생이름, E.학점 FROM 학생 S, 수강 E, 과목 C WHERE (S.학번 = E.학번) AND (E.과목번호 = C.과목번호) OR C.과목이름 = '운영체제';
3. SELECT S.학생이름, E.학점 FROM 학생 S, 수강 E, 과목 C WHERE (S.학번 = E.학번) AND (E.과목번호 = C.과목번호) AND C.과목이름 = '운영체제';
4. SELECT S.학생이름, E.학점 FROM 학생 S, 수강 E, 과목 C WHERE (S.학번 = E.학번) OR (E.과목번호 = C. 과목번호) OR C.과목이름 = '운영체제';
릴레이션(테이블) 곡(앨범번호, 곡번호, 곡명, 구분)을 생성하는 SQL문을 보이시오. 단, 곡 릴레이션의 앨범번호 속성은 앨범 릴레이션의 번호 속성을 참조하는 외래키이고 앨범번호와 곡번호 속성의 도메인은 INT이고 곡명과 구분 속성의 도메인은 VARCHAR이다.
CREATE TABLE 곡 ( 앨범번호 INT NOT NULL, 곡번호 INT NOT NULL, 곡명 VARCHAR(50), 구분 VARCHAR(10), PRIMARY KEY(앨범번호, 곡번호), FOREIGN KEY(앨범번호) REFERENCES 앨범(앨범번호));
수학의 프레디킷 해석에 기반한 관계 데이터 연산으로서 원하는 데이터만 명시하고 질의를 어떻게 수행할 것인가는 명시하지 않는 선언적인 언어인 관계 연산은 무엇인가?
관계 해석
EMPLOYEE(EMPNO, EMPNAME, TITLE, SALARY, DNO)와 DEPARTMENT(DNO, DEPTNAME, FLOOR) 릴레이션에서`기획` 부서의 사원 정보를 삭제하는 SQL문을 보이시오.
DELETE FROM EMPLOYEE WHERE DNO IN (SELECT DEPTNO FROM DEPARTMENT WHERE DEPTNAME = `기획`);
EMPLOYEE(EMPNO, EMPNAME, TITLE, SALARY, DNO)와 DEPARTMENT(DEPTNO, DEPTNAME, FLOOR) 릴레이션에서 3명 이상 근무하는 부서별 부서명(DEPTNAME)과 사원 수를 검색하는 SQL문을 보이시오.
SELECT D.DEPTNAME, COUNT(*) AS `사원 수` FROM EMPLOYEE E, DEPARTMENT D WHERE E.DNO = D.DEPTNO GROUP BY D.DEPTNAME HAVING COUNT(*) >= 2;
데이터베이스의 논리적 구조를 릴레이션인 테이블 구조로 표현하는 데이터 모델은 무엇인가?
관계 데이터 모델