목록분류 전체보기 (166)
공부기록
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/OzbNC/btq3Xcbq7N8/H3Ow9poe10OHmmoPMZ15NK/img.png)
정규화 함수적 종속성등의 종속성 이론을 이용하여 잘못 설계된 관계형 스키마를 더 작은 세트로 쪼개어 바람직한 스키마로 만들어 가는 과정 정규화의 목적 데이터의 중복성을 최소화하고 일관성등을 보장하여 데이터베이스의 품질을 보장하고 성능 향상을 위해 수행한다. 이상(anomaly)의 개념 및 종류 정규화를 거치지 않으면 데이터베이스 내에 데이터들이 불필요하게 중복되어 릴레이션 조작시 예기치 못한 곤란한 형상들이 발생한다. 이를 이상이라고 하며 삽입이상, 삭제이상, 갱신이상이 있다. 삽입이상 릴레이션에 데이터를 삽입할 때 의도와는 상관없이 원하지 않는 값들도 함께 삽입되는 현상이다. 삭제이상 릴레이션에서 한 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는 연쇄가 일어나는 현상이다. 갱신 이상 릴레이션..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/OulsY/btq3TxVCkTa/3ztOBr5WyGsLsDIHudpLVk/img.png)
개체-관계 데이터 모델 데이터베이스는 개체와 개체들 사이의 관계들의 집합으로 모델링될 수 있다. ER 모델의 구성 개체 관계 개체, 관계 모두 특징으로 속성만을 가진다. 개체 구별이 가능한 객체를 말한다. 개체들은 속성을 가진다. 같은 속성을 가지는 개체들의 집합을 개체 타입이라고 한다. 관계 개체집합 내의 개체들은 다른 개체집합의 개체와 연관성이 있을 수 있다. 관계는 각 개체 집합에서의 객체들 사이의 연관을 말한다. 관계는 속성을 가질 수 있다. 관계 집합은 같은 속성을 가지는 관계들의 집합이다. 관계성 집합 차수 관계성 집합 차수는 어떤 관계에 포함되는 개체의 개수를 의미한다. 이진, 3진, 4진, ... N진 속성 속성은 개체, 또는 관계성이 가지는 특성으로 서술적인 사항이다. 속성 타입의 구분 ..
내장 SQL 내장 SQL은 호스트 언어 중간중간에 SQL 문장을 직접 삽입하는 형식 전처리 과정을 꼭 거쳐야함 전처리 단계에서 SQL문장 구문검사, 권한 검사, 질의 실행 코드 생성등의 작업이 이루어짐 커서 데이터베이스는 SQL언어와 일반 프로그램 언어 사이의 불일치를 해결해야함 이러한 불일치를 해소하기 위해 cursor 기능을 제공 커서 실행 과정 declare open open에 의해 쿼리가 평가된다. fetch fetch로 인해 쿼리의 튜플이 호스트 언어의 변수로 옮겨온다. close close는 임시 관계를 제거하도록 한다. 동적 SQL 프로그램 실행시간에 SQL문장이 생성됨 SQL 문장이 프로그램에 명시적으로 저장되지 않고 사용자가 동적으로 SQL 문장을 생성하여 입력 전처리 과정이 불가하다. ..
권한 사용자가 데이터베이스 연산을 하려면 연산에 필요한 권한을 가지고 있어야하며 권한이 없다면 시스템에 의해 수행이 거부된다. 데이터베이스 인스턴스에 대한 권한 create read update delete 데이터베이스 스키마에 대한 권한 index create / delete table create table update table delete SQL 언어 특권 select, insert, update, delete references : 외래키를 선언 usage : 도메인을 사용할 수 있는 특권 all privileges : 모든 특권을 사용 Grant 문장 grant 문장은 권한을 부여 grant ong to [ with grant option] 권한을 부여하는 자는 그들에 대한 권한을 이미 가지고..
무결성 무결성이란 데이터베이스에 저장된 데이터 값과 그 것이 표현하는 현실세계의 시제 값이 일치하는 정확성을 의미한다. 무결성 제약조건은 데이터베이스에 들어있는 데이터의 정확성을 보장하기 위해 부정확한 자료가 데이터베이스 내에 저장되는 것을 방지하기 위한 제약 조건을 말한다. 무결성 제약 조건은 데이터 베이스의 정확성과 일치성을 보장하기 위해 사용된다. 무결성의 종류에는 개체 무결성, 도메인 무결성, 참조 무결성, 사용자 정의 무결성 등이 있다. 개체 무결성 개체 무결성은 기본 테이블을 기본키를 구성하는 어떤 속성도 null 값을 가져서는 안된다. 기본키는 중복되어선 안된다. not null, primary, unique 도메인 무결성 도메인 무결성은 주어진 속성의 값이 정의된 도메인에 속한 값이어야 한..
view 관계형 데이터 베이스에서 뷰는 특정 사용자로부터 특정 데이터를 숨기는 것 실제 스키마가 아니지만 '가상의 관계'로써 사용자에게 보여지는 것을 뷰라고 한다. view definition create view v as 예시 create view my Professor as select pID, name, deptName from professor; 뷰는 항상 최신 데이터를 보유한다 뷰는 한 개 이상의 테이블로 붜 정의할 수 있다. 뷰는 테이블은 튜플을 실제로 가지지 않기에 가상 관계, 또는 가상 테이블로 불린다. 뷰는 테이블의 정보를 가져올 뿐이므로 테이블을 최신 데이터를 항상 보여주게 된다. 다른 뷰를 사용하는 뷰 뷰를 정의할 때 베이스 테이블, 혹은 다른 뷰를 사용할 수 있다. 순환 뷰 새로운 ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/b4zd4V/btq3Thyg5ff/KTkfLDPqbhTfW1DFKixQ2k/img.png)
인덱스 인덱스는 데이터 레코드를 빠르게 접근하기위해 쌍으로 구성되는 데이터 구조이다. 인덱스는 데이터가 저장된 물리적 구조와 밀접한 관련이 있다. 인덱스는 레코드가 저장된 물리적 구조에 접근하는 방법을 제공 레코드의 삽입과 삭제가 수시로 일어나는 경우, 인덱스의 갯수를 최소로 하는 것이 효율적이다. 인덱스가 없으면 특정한 값을 찾기 위해 모든 데이터 페이지를 확인하는 TABLE SCAN이 발생한다. Table Scan 테이블에 있는 모든 레코드를 순차적으로 읽는 것 기본키를 위한 기본 인덱스, 기본 인덱스가 아닌 인덱스를 보조 인덱스라고 한다. 대부분의 상용 DBMS에선 기본 키에 대해 자동적으로 기본 인덱스를 생성 클러스터드 인덱스 / 넌클러스터드 인덱스 클러스터드 인덱스 인덱스 키의 순서에 따라 데이..
트랜잭션의 정의 트랜잭션은 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위, 또는 한꺼번에 모두 수행되어야할 일련의 연산을 의미 ACID (Atomiticy, Consistency, Isolation, Durability) 성질을 가지는 데이터 베이스 연산의 나열 (Sequence)이다. Atomicity (원자성) 트랜잭션의 연산은 데이터베이스에 반영되도록 모두 완료 (Commit)되든지, 아니면 전혀 반영되지 않도록 복구(Rollback)되어야 한다. 트랜잭션 내의 모든 명령은 반드시 완벽히 수행되거나, 오류 발생시 모두 취소되어야 한다. Consistency (일관성) 트랜젝션이 commit되면 언제나 일관성 있는 데이터베이스 상태로 변환한다. 무결성 제약이 트랜잭션..