
데이터베이스 시험정리
본 내용은
"
[건국대학교] 데이터베이스 시험정리
"
의 원문 자료에서 일부 인용된 것입니다.
2024.05.27
문서 내 토픽
-
1. 기본 값 생성테이블 생성 시 default 값을 설정하여 null 값이 들어가지 않도록 할 수 있다. 예를 들어 create table student(tot_cred numeric(3,0) default 0, primary key(ID))와 같이 default 0으로 설정하면 tot_cred 속성에 null 값이 들어가지 않는다.
-
2. 인덱스 생성데이터베이스 시스템이 릴레이션의 모든 투플을 살펴보는 과정 없이 효과적으로 데이터를 찾을 수 있도록 하는 자료구조이다. create index 인덱스이름 on 릴레이션(애트리뷰트)와 같이 인덱스를 생성할 수 있다.
-
3. 대형 객체 타입대형 데이터를 저장할 수 있는 데이터 타입으로 CLOB(10KB), BLOB(10MB, 2GB) 등이 있다.
-
4. 테이블 생성 확장현재 존재하는 테이블과 같은 스키마를 가지고 있는 새로운 테이블을 생성할 수 있다. create table temp_instructor like instructor와 같이 기존 테이블의 스키마를 복사하여 새로운 테이블을 만들 수 있다. 또한 질의 결과를 포함하는 새로운 테이블을 생성할 수도 있다.
-
5. 권한 부여와 취소데이터베이스 사용자에게 select, insert, update, delete 등의 권한을 부여하거나 취소할 수 있다. grant 권한종류 on 릴레이션명 to 사용자이름1, 사용자이름2와 같이 권한을 부여하고, revoke 권한종류 on 릴레이션명 from 사용자이름1, 사용자이름2와 같이 권한을 취소할 수 있다.
-
6. 역할(Role)권한 종류와 사용자가 많은 경우 개별적으로 권한을 부여하기 어려워 역할(Role)을 만들어 관리할 수 있다. create role 역할명, grant 권한 to 역할명, grant 역할명 to 사용자명과 같이 역할을 생성하고 권한을 부여하며 사용자에게 역할을 부여할 수 있다.
-
7. 권한의 전달기본적으로 사용자는 자신에게 부여된 권한을 다른 사용자에게 전달할 수 없다. 하지만 with grant option 옵션을 사용하면 다른 사용자에게 권한을 전달할 수 있다.
-
8. 프로그래밍 언어와 SQLSQL만으로는 모든 질의를 표현할 수 없기 때문에 범용 프로그래밍 언어에서 SQL에 접근해야 한다. 동적 SQL과 내장 SQL 두 가지 방식으로 프로그래밍 언어에서 SQL에 접근할 수 있다.
-
9. 함수와 프로시저SQL 표준 이외에도 오라클의 PL/SQL, SQL Server의 Transact-SQL 등 DBMS별로 함수와 프로시저를 제공한다.
-
10. 트리거데이터베이스 수정에 대한 부가적인 동작을 자동으로 수행하는 기능이다. 트리거가 실행되어야 하는 시점과 수행되어야 할 동작을 명시해야 한다.
-
1. 기본 값 생성기본 값 생성은 데이터베이스 설계에서 매우 중요한 부분입니다. 기본 값을 적절히 설정하면 데이터의 일관성과 무결성을 유지할 수 있습니다. 예를 들어, 회원 가입 시 가입 날짜 필드에 기본 값을 현재 날짜로 설정하면 사용자가 입력하지 않아도 자동으로 가입 날짜가 기록됩니다. 또한 성별 필드에 기본 값을 '남성'으로 설정하면 사용자가 입력하지 않더라도 기본적으로 '남성'으로 처리할 수 있습니다. 이처럼 기본 값 설정은 데이터의 일관성과 무결성을 유지하는 데 매우 중요한 역할을 합니다. 따라서 데이터베이스 설계 시 각 필드의 특성을 고려하여 적절한 기본 값을 설정하는 것이 중요합니다.
-
2. 인덱스 생성인덱스 생성은 데이터베이스 성능 향상을 위해 매우 중요한 작업입니다. 인덱스를 통해 데이터를 빠르게 검색할 수 있으며, 특히 대용량 데이터베이스에서 그 효과가 크게 나타납니다. 인덱스를 생성할 때는 검색 빈도가 높은 필드를 선택하는 것이 중요합니다. 또한 인덱스 생성 시 메모리와 디스크 공간 사용량이 증가하므로 적절한 인덱스 생성이 필요합니다. 예를 들어, 자주 사용되지 않는 필드에 대해서는 인덱스를 생성하지 않는 것이 좋습니다. 인덱스 생성 시 데이터베이스 성능 향상과 함께 데이터 무결성 유지를 위해 주의 깊게 관리해야 합니다.
-
3. 대형 객체 타입대형 객체 타입은 데이터베이스에서 이미지, 동영상, 오디오 등과 같은 대용량 데이터를 저장하는 데 사용됩니다. 이러한 대형 객체 타입은 일반적인 문자열 데이터 타입과 달리 데이터 크기가 매우 크기 때문에 데이터베이스 설계 및 관리에 특별한 주의가 필요합니다. 대형 객체 타입을 사용할 때는 데이터 크기, 성능, 보안 등을 고려해야 합니다. 예를 들어, 대용량 데이터를 데이터베이스에 직접 저장하는 것보다는 파일 시스템에 저장하고 데이터베이스에는 파일 경로만 저장하는 것이 더 효율적일 수 있습니다. 또한 대형 객체 타입에 대한 적절한 백업 및 복구 전략을 수립해야 합니다. 따라서 대형 객체 타입을 사용할 때는 데이터베이스 설계 및 관리에 대한 깊이 있는 이해가 필요합니다.
-
4. 테이블 생성 확장테이블 생성 확장은 데이터베이스 설계 및 관리에 있어 매우 중요한 부분입니다. 테이블을 생성할 때는 데이터의 특성, 사용 목적, 성능 요구사항 등을 고려해야 합니다. 예를 들어, 자주 변경되는 데이터는 별도의 테이블로 분리하는 것이 좋습니다. 또한 대용량 데이터의 경우 파티셔닝 기법을 사용하여 성능을 향상시킬 수 있습니다. 테이블 생성 시 적절한 데이터 타입 및 제약 조건 설정, 인덱스 생성 등을 통해 데이터의 무결성과 성능을 보장할 수 있습니다. 이와 함께 테이블 생성 후에도 지속적인 모니터링과 최적화가 필요합니다. 따라서 테이블 생성 및 확장 시 데이터베이스 설계 및 관리에 대한 깊이 있는 이해가 필요합니다.
-
5. 권한 부여와 취소데이터베이스 권한 관리는 데이터 보안과 무결성을 유지하는 데 매우 중요합니다. 권한 부여와 취소를 통해 사용자 및 역할별로 적절한 권한을 설정할 수 있습니다. 예를 들어, 일반 사용자에게는 읽기 권한만 부여하고 관리자에게는 모든 권한을 부여할 수 있습니다. 또한 특정 테이블이나 열에 대한 권한을 제한할 수 있습니다. 권한 관리 시 최소 권한 원칙을 적용하여 사용자에게 필요한 최소한의 권한만 부여하는 것이 중요합니다. 권한 부여와 취소는 데이터베이스 보안을 위해 지속적으로 관리되어야 하며, 사용자 및 역할 변경 시 권한 설정을 함께 검토해야 합니다.
-
6. 역할(Role)데이터베이스 역할(Role)은 사용자 권한 관리를 위해 매우 중요한 개념입니다. 역할을 통해 사용자에게 일괄적으로 권한을 부여할 수 있어 효율적인 권한 관리가 가능합니다. 예를 들어, '관리자' 역할에 모든 권한을 부여하고 관리자 사용자에게 해당 역할을 부여하면 간단하게 관리자 권한을 설정할 수 있습니다. 또한 역할 간 상속 관계를 설정하여 권한을 효과적으로 전달할 수 있습니다. 역할 관리 시 최소 권한 원칙을 적용하여 사용자에게 필요한 최소한의 권한만 부여하는 것이 중요합니다. 이를 통해 데이터베이스 보안을 강화하고 사용자 권한 관리를 효율적으로 수행할 수 있습니다.
-
7. 권한의 전달데이터베이스 권한 전달은 사용자 및 역할 간 권한 관리를 위해 매우 중요한 개념입니다. 권한 전달을 통해 상위 사용자 또는 역할이 하위 사용자 또는 역할에게 자신의 권한을 부여할 수 있습니다. 예를 들어, 관리자 역할이 일반 사용자 역할에게 특정 테이블에 대한 읽기 권한을 부여할 수 있습니다. 이를 통해 효율적인 권한 관리가 가능하며, 사용자 및 역할 변경 시 권한 설정을 간단하게 수정할 수 있습니다. 권한 전달 시 최소 권한 원칙을 적용하여 필요한 최소한의 권한만 전달하는 것이 중요합니다. 또한 권한 전달 내역을 모니터링하고 주기적으로 검토하여 데이터베이스 보안을 강화해야 합니다.
-
8. 프로그래밍 언어와 SQL프로그래밍 언어와 SQL은 데이터베이스 개발 및 관리에 있어 매우 중요한 요소입니다. 프로그래밍 언어를 통해 복잡한 비즈니스 로직을 구현할 수 있으며, SQL을 통해 데이터베이스와 효과적으로 상호작용할 수 있습니다. 예를 들어, 자바 프로그래밍 언어와 JDBC를 사용하여 데이터베이스 연결, 쿼리 실행, 결과 처리 등을 구현할 수 있습니다. 또한 SQL을 통해 데이터 조회, 삽입, 수정, 삭제 등의 작업을 수행할 수 있습니다. 프로그래밍 언어와 SQL을 효과적으로 활용하면 데이터베이스 애플리케이션을 보다 효율적으로 개발할 수 있습니다. 따라서 데이터베이스 개발 및 관리 시 프로그래밍 언어와 SQL에 대한 깊이 있는 이해가 필요합니다.
-
9. 함수와 프로시저데이터베이스에서 함수와 프로시저는 복잡한 비즈니스 로직을 구현하는 데 매우 유용한 도구입니다. 함수는 특정 입력 값을 받아 결과 값을 반환하는 반면, 프로시저는 입력 값 없이 특정 작업을 수행할 수 있습니다. 예를 들어, 고객 정보 조회 함수, 주문 내역 계산 프로시저 등을 구현할 수 있습니다. 함수와 프로시저를 활용하면 복잡한 비즈니스 로직을 데이터베이스 내부에서 처리할 수 있어 애플리케이션 성능을 향상시킬 수 있습니다. 또한 함수와 프로시저를 통해 데이터 무결성을 보장하고 중복 코드를 줄일 수 있습니다. 따라서 데이터베이스 개발 및 관리 시 함수와 프로시저에 대한 이해와 활용이 필요합니다.
-
10. 트리거데이터베이스 트리거는 특정 이벤트 발생 시 자동으로 실행되는 데이터베이스 객체입니다. 트리거를 통해 데이터 무결성 검사, 로깅, 이벤트 처리 등의 작업을 수행할 수 있습니다. 예를 들어, 주문 테이블에 새로운 주문이 삽입될 때 재고 테이블의 재고 수량을 자동으로 감소시키는 트리거를 구현할 수 있습니다. 또한 사용자 테이블에 새로운 사용자가 추가될 때 로그 테이블에 기록하는 트리거를 구현할 수 있습니다. 트리거는 데이터베이스 무결성과 보안을 강화하는 데 매우 유용하지만, 잘못 구현되면 성능 저하 등의 문제가 발생할 수 있습니다. 따라서 트리거 구현 시 성능, 보안, 데이터 무결성 등을 고려하여 신중하게 설계해야 합니다.
-
도시방재 체제 구축 방안에 대한 세부 내용 검토 7페이지
도시방재 체제 구축 방안에 대한 세부 내용 검토1. 도시방재정보 시스템 구축대도시에서의 재해?재난이 발생했을 경우 재해정보에 관한 여러문제가 발생한다. 여기에서는 정보문제를 처리할 수 있는 정보시스템의 몇가지를 설명해 보면 ① 중요통신의 확보 ② 재해, 재난의 상황에 대처할 수 있는 정보체제의 확립 ③ 행정기관과 보도기관의 연락과 협력을 들 수 있다.① 현재의 정보시스템은 평상시의 정보시스템을 효율적으로 운영하는 방침을 가지고 있지만, 재해?재난시에는 정보수집의 불균형이 발생한다. 대규모 재해?재난일수록 방재기관과 주민에 필요한 중...2021.08.16· 7페이지 -
관계형 데이터베이스에 대해 정의하고 구성 요소들에 대해 설명 5페이지
관계형 데이터베이스에 대해 정의하고 구성 요소들에 대해 설명해봅시다.관계형 데이터베이스에 대해 정의하고 구성 요소들에 대해 설명해봅시다.목차1. 서론2. 본론(1) 관계형 데이터베이스의 구성 요소(2) 관계형 데이터베이스의 이점3. 결론4. 참고문헌1. 서론관계형 데이터베이스(Relational Database)는 데이터를 구조화하고 관리하는 데 있어 현대 데이터 관리 시스템의 핵심이다. 1970년 에드가 F.테드 코드가 제안한 데이터의 관계형 모델에 기반을 두고 있으며, 관계형 데이터베이스는 데이터를 표(table) 형태로 저장하...2024.12.18· 5페이지 -
소프트웨어공학 레포트 소프트웨어 개발 생명주기 모델이 무엇인지 설명하고, 각 주기별 역할에 대해서 기술하시오. 5페이지
주제: 소프트웨어 개발 생명주기 모델이 무엇인지 설명하고, 각 주기별 역할에 대해서 기술하시오.I. 서론II. 본론1. 폭포수모델2. 프로토타입 모델3. 반복적 모델, RAD 모델III. 결론IV. 참고문헌I. 서론소프트웨어공학에서 생명주기는 소프트웨어공학에서 소프트웨어를 개발할 때 있어서 매우 중요한 과정이라고 할 수 있다. 요건정의, 분석, 설계, 구축, 운영의 순으로 흐르는 소프트웨어 개발 생명주기에 있어서 이와 관련된 다양한 생명주기 모델들이 있다.프로젝트를 진행할 때, 하나의 생명주기 모델을 적용해서 프로젝트를 수행한다. ...2023.06.02· 5페이지 -
정보처리기사 필기, 1~5과목 핵심내용 정리 (최종정리용) 127페이지
2020 정보처리기사 필기 간단 정리 ( 시험 전날 정독용 )1 과목 1 장 - 요구사항 확인 소프트웨어 공학 패러다임 ( 소프트웨어 생명 주기 ) - 소프트웨어 개발 방법론의 바탕이 되는 것으로 , 소프트웨어를 개발하기 위해 정의하고 운용 , 유지보수 등의 과정을 각 단계별로 나눈 것 1. 폭포수 모형 - 응용 분야가 단순하고 설치 시점에 제품 설명서가 요구되었을 경우 선택 2. 프로토타입 모형 - 구축하고자 하는 시스템의 요구사항이 불분명할 경우 선택 3. 나선형 모형 - 고전적 생명 주기 모형에 프로토타입 모형의 장점과 위험 ...2021.10.06· 127페이지 -
테이블 태그를 이용한 웹페이지 제작 7페이지
1. 작성한 웹페이지 문서 코드 테이블 태그를 이용한 웹페이지 제작 10월 달력 caption{ font-size: 40px; }ol{ color: pink; font-size: 25px; }legend{ color: purple; font-size: 35px; } ★ 나의 10월 스케줄 ★ 일 월 화 수 목 금 토 1 데이터베이스 과제 제출 명동에서 쇼핑 2 학급대표 등록서 제출하기 여의도 한강공원 나들이 3 개천절 방정리 하기 4 인터넷 활용 과제 제출하기 알고리즘 강의 보강 5 '말의 품격'이라는 책 읽...2020.12.20· 7페이지