Q. DBMS에 대해 설명해주세요
A. 데이터 베이스 관리 시스템이란 컴퓨터에 저장되는 데이터 베이스를 관리해주는 소프트웨어 시스템 입니다. 데이터베이스를 구축하는 틀을 제공하고 저장된 데이터를 보조기억장치(디스크 등)에 효율적으로 저장하며 필요한 데이터를 신속히 검색하는 기능을 제공합니다. 또한 사용자나 다른 프로그램에서 데이터 베이스에 접근할 수 있는 인터페이스를 제공하며 시스템 장애에 대한 어느 정도의 복구 기능도 제공합니다. 다중 사용자와 다중 프로그램을 지원하는 dbms에서는 사용자 권한에 따른 보안성 유지 기능과 여러 프로그램이 같은 데이터를 사용하면서 발생하는 문제를 해소시켜 줄 동시성 제어 기능도 제공해야 합니다.
Q. 관계형 데이터 모델에 대해 설명해주세요.
A. 관계형 데이터 모델은 가장 널리 사용되는 데이터 모델로 2차원적인 표를 이용해서 데이터 상호 관계를 정의하는 DB구조 입니다.
파일 구조처럼 구성한 테이블들을 하나의 DB로 묶어서 테이블 내에 있는 속성들 간의 관계를 설정하거나 테이블 간의 관계를 설정하여 이용합니다.
Q. 정규화에 대해 설명해주세요
A. 정규화란 함수적 종속성 등의 종속성 이론을 이용하여 잘못 설계된 관계형 스키마를 더 작은 속성의 세트로 쪼개어 바람직한 스키마로 만들어가는 과정입니다. 데이터 구조의 안정성과 무결성을 유지합니다. 또한 데이터 중복을 배제하여 이상의 발생 방지 및 자료 저장 공간의 최소화가 가능합니다.
Q. 무결성에 대해 설명해주세요
A. 무결성이란 데이터 베이스에 저장된 데이터 값이 그것이 표현하는 현실 세계의 실제값이 일치하는 정확성을 의미합니다. 개체무결성, 도메인무결성, 참조무결성, 사용자정의 무결성이 있습니다.
Q. 이상에 대해 설명해주세요
A. 정규화를 거치지 않으면 데이터 베이스 내에 데이터들이 불필요하게 중복되어 릴레이션 조작 시 예기치 못한 곤란한 현상이 발생하는데, 이를 이상이라고 하고 삽입이상, 삭제이상, 갱신이상이 있습니다.
삽입이상은 릴레이션에 데이터를 삽입할 때, 의도와는 상관없이 원하지 않은 값들도 함께 삽입되는 현상입니다.
삭제이상은 릴레이션에서 한 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는 연쇄가 일어나는 현상입니다.
갱신이상은 릴레이션에서 튜플에 있는 속성값을 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 모순이 생기는 현상입니다.
Q. char과 varchar에 대해서 설명해주세요
A. char은 길이가 n byte인 고정길이 문자열로 공간관리에 용이합니다. varchar은 최대 길이가 n byte인 가변길이 문자열로 공간변화에 용이합니다.
Q. 뷰(View)에 대해 설명해주세요
A. 뷰는 기존 테이블들로부터 생서되는 가상의 테이블이라고 합니다. 테이블처럼 물리적으로 생성되는 것은 아니고 기존의 테이블들을 조합하여 사용자에게 실제로 존재하는 테이블인 것처럼 보이게 합니다. 뷰를 사용하면 특정 사용자에게 테이블의 내용 중 일부를 숨길 수 있기 때문에 보안 효과가 있습니다. 또한 복잡한 질의 결과를 뷰로 만들어서 사용하게 되면 질의가 더 간단해집니다.