본문 바로가기

DataBase

(5)
DataBase[뷰 개념, 생성, 삭제, 수정][뷰 권한 오류] 뷰 개념 : 하나이상의 테이블을 합하여 만든 '가상테이블' ** select문을 이용하여 최종결과를 얻음. ** 그 결과를 마치 실제 테이블처럼 사용할 수 있도록 만들어주는 데이터 베이스 객체이다.** 실제 데이터를 디스크에 저장하지 않는다. 대신에 뷰를 생성할 때 사용한 select문의 정의를 DBMS가 저장 => 사용자에게 반환 장점 : 편리성 = 미리 정의된 뷰를 일반 테이블 처럼 사용 OR 사용자가 필요한 정보만 요구에 맞게 가공하여 뷰로 만듬. 재사용성 = 자주 사용되는 질의를 뷰로 미리 정의해 놓을 수 있음 보완성 = 각 사용자별로 필요한 데이터만 선별할 수 있다. 뷰 생성 예) CREATE VIEW 뷰이름 [(열이름[,.....N])] AS SELECT 문 1. 테이블을 먼저 생성한다. CR..
트랜잭션 트랜잭션 [transaction : 거래] : 데이터 베이스 내에서 하나의 논리적인 기능을 수행하기 위해 행해지는 한꺼번에 사용되는 하나 이상의 query를 모아 놓은 쪼갤 수 없는 작업의 논리적인 단위를 의미 예를 들면, 배가 고픈 a양이 빵 집에서 빵을 고르고 계산대 앞에 섰다. 계산을 하려고 보니 지갑을 들고 오지 못했다는 것을 인지 하였다. 그래서 그 빵을 놓고 나와버리는 상황 즉, 거래가 이루워지지 못하고 원래의 상태로 돌아가려고 하는 것을 트랜잭션이라고 한다. 트랜 잭션 특성 * 원자성 * 일관성 * 지속성 또는 영속성 * 고립성 또는 격리성 원자성(atomicity) : 분해가 불가능한 최송의 단위인 하나의 원자처럼 동작한다는 의미
[데이터베이스 문자 함수][dual이란?] dual 이란?? 테이블은 오라클을 설치하면 자동으로 생성되는 테이블이다. 산술 연산이나 가상 컬럼등을 한번 실행할때 사용하는 테이블이다. 테이블 생성하기 테이블 내용 추가하기 upper/lower/inicap upper은 소문자 -> 대문자 lower은 대문자 -> 소문자 inicap은 영문자에서 첫번째를 대문자로 출력 concat 문자의 값을 연결 select 'good','day',concat('good','day')from dual; substr(대상, 시작위치, 추출할 개수) 문자열 추출 substr("문자열 ","시작위치",시작위치에서부터 읽을 문자갯수(?)") select substr('oracle mania',4,3), // 앞에서 부터 substr('oracle mania',-4,3) /..
데이터 베이스 인데스[개념][생성/변경/삭제] 인덱스 : 데이터의 값의 주소를 주어 어느 위치에 있는지 알 수 있는 '주소록' 인덱스 ' b-tree (일반적인 RDBMS) ' : 데아터를 빨리 찾기 위해 투플의 키 값에 대헌 물리적 위치를 기록해둔 자료구조이다. 인덱스 장점 및 단점 장점 = 검색속도가 무척 빨라질 수 있다. = 해당 쿼리의 부하가 줄어들어서, 시스템 전체의 성능이 향상됨. 단점 = 인덱스가 데이터베이스 공간을 차지해서 데이터베이스 크기의 10% 정도의 추가 공간이 필요 = 처음 인덱스를 생성하는데 시간이 많이 소요될 수 있다. = 데이터의 변경 작업(insert, update, delete)이 자주 일어날 경우에는 오히려 성능이 느려진다. 인덱스 [생성/수정/삭제] : 자동 생성되는 것 외의 직접 생성/수정/삭제의 경우 CREAT..
데이터베이스 시퀀스[정의][cmd 시퀀스 생성, 수정, 삭제] 시퀀스(뜻: 순서, 연속) 데이터베이스에서는 "순차적으로 증가하며 감소되는 값을 제공"하는 데이터베이스 객체이다. 일반적으로 시퀀스는 테이블의 기본키를 생성(중복값 x) ->쿼리만으로 충분히 구현 가능 테이블 내의 유일한 숫자를 자동으로 생성 즉, 사용자가 직접 값을 생성하는 부담감을 줄임 '시퀀스 형식' [start with n] 시작할 값을 정한다. [INCREMENT BY N ] 연속적인 시퀀스 번호의 증가치를 지정할 때 사용 MINVALUE = 양수 MAXVALUE = 음수 [NOMINVALUE | MINVALUE n] NOMINVALUE = 최솟값을 제한이 없음, 디폴트 값 MINVALUE = 최솟값을 설정 NOMAXVALUE를 지정하면 ASCENDING(오름차순) 순서일 경우에는 1 DECEN..