본문 바로가기
반응형

Data/Oracle15

[Oracle] Table Space 사용량 확인 쿼리 SELECT A.TABLESPACE_NAME , ROUND(SUM(A.BYTES) / (1024 * 1024)) "전체(MB)" , ROUND(SUM(B.FREES) / (1024 * 1024)) "여유(MB)" , ROUND(SUM(B.FREES) * 100 / SUM(A.BYTES), 2) AS "잔여공간비율(%)" FROM ( SELECT FILE_ID , TABLESPACE_NAME , SUM(BYTES) BYTES FROM DBA_DATA_FILES GROUP BY FILE_ID, TABLESPACE_NAME) A , ( SELECT TABLESPACE_NAME , FILE_ID , SUM(BYTES) FREES FROM DBA_FREE_SPACE GROUP BY TABLESPACE_NAME, .. 2021. 2. 24.
[Oracle] Synonym(시노님) 시노님(Synonym)이란? '동의어'라는 뜻으로, 데이터베이스 객체는 각자 고유한 이름이 있는데 이 객체들에 대한 동의어를 만드는 것이 바로 시노님이며 이 또한 데이터베이스 객체에 속한다. (ex. 필명) 시노님에는 모든 사용자가 접근할 수 있는 Public시노님과 특정 사용자에게만 참조되는 Private시노님이 있다. 0. 시노님 사용 이유 1) 데이터베이스의 투명성을 제공하기 위해서 사용한다. 다른 사용자의 객체를 참조할 때 많이 사용한다. 2) 일단 시노님을 생성해 놓으면 나중에 이 시노님이 참조하고 있는 객체의 이름이 바뀌더라도 이전에 작성해 놨던 SQL문을 수정할 필요가 없다. 3) 시노님은 별칭이므로 원 객체를 숨길 수 있어 보안 측면에서 유리하다. PRIVATE 시노님은 다른 사용자가 참조.. 2020. 11. 23.
[Oracle] Index(인덱스) 인덱스(Index)란? 테이블에 있는 데이터를 빨리 찾기 위한 용도의 데이터베이스 객체이다. 조회 성능을 높이려는 목적에서 만들어졌으며, 인덱스 자체에 키와 매핑 주소 값을 별도로 저장한다. 따라서 테이블에 데이터를 입력하거나 삭제, 수정할 때 인덱스에 저장된 정보도 똑같이 작업이 이루어진다. 그래서 인덱스를 너무 많이 만들면 성능에 부하가 뒤따르기때문에 주의해야한다. (ex. 책 내용 맨 뒤 찾아보기 항목..) 인덱스 구성 컬럼 개수에 따른 분류 단일 인덱스 / 결합 인덱스 유일성 여부에 따른 분류 UNIQUE 인덱스 / NON-UNIQUE 인덱스 인덱스 내부 구조에 따른 분류 B-tree 인덱스 / 비트맵 인덱스 / 함수 기반 인덱스 인덱스 구성 컬럼 개수에 따른 분류와 유일성 여부에 따른 분류는 형.. 2020. 11. 23.
[Oracle] View(뷰) 뷰(View)란? 하나 이상의 테이블이나 다른 뷰의 데이터를 볼 수 있게하는 데이터베이스 객체이다. 실제 데이터는 뷰를 구성하는 테이블에 담겨 있지만 마치 테이블처럼 사용할 수 있다. 테이블 뿐만 아니라 다른 뷰를 참조해 새로운 뷰를 생성하여 사용할 수 있다. 데이터를 본다는 의미가 있어 뷰의 정의는 데이터를 조회하는 SELECT문으로 구성된다. -- 뷰의 생성 CREATE OR REPLACE VIEW [스키마.]뷰명 AS SELECT 문장; -- 뷰생성 / 뷰조회 CREATE OR REPLACE VIEW emp_dept_v1 AS SELECT a.employee_id, a.emp_name, a.department_id, b.department_name FROM employees a, department.. 2020. 11. 23.
[Oracle] 테이블 변경 및 테이블 복사 / ALTER TABLE / CTAS [Oracle] 오라클 테이블 / CREATE TABLE 테이블(TABLE) 데이터를 넣고 수정하고 삭제하는, 즉 데이터를 담고 있는 객체가 테이블이다. 테이블은 DBMS상에서 가장 기본적인 객체로 로우(행)과 컬럼(열)으로 구성된 2차원 형태(표)의 객체이�� prinha.tistory.com 테이블 변경 CREATE문으로 테이블을 생성한 후 불가피하게 수정해야 할 상황이 발생할 때가 많다. 최초 설계를 잘못한 원인도 있고 요구사항이 변경되기 때문이다. ALTER TABLE문을 사용해 테이블을 수정할 수 있다. CREATE TABLE ex2_10 ( --예시 테이블 Col1 VARCHAR2(10) NOT NULL, Col2 VARCHAR2(10) NULL, Create_date DATE DEFAULT .. 2020. 9. 16.
[Oracle] 데이터 무결성을 보장하기 위한 제약 조건 (Constraints) 제약 조건 (Constraints)은 컬럼에 대한 속성 형태로 정의하지만, 엄연히 오라클 데이터베이스 객체 중 하나이며 데이터 무결성을 보장하기 위한 용도로 사용된다. 제약 조건 타입(Constraint Type)에는 NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK 등이 있다. -- 1) 컬럼별 수준제약 : 컬럼마다 제약조건 따로 -- 2) 테이블 수준제약 : 컬럼을 다 만든 후 제약 코드를 쓰는것 1) NOT NULL 컬럼을 정의할 때 NOT NULL 제약조건을 명시하면 해당 컬럼에는 반드시 데이터를 입력해야 한다. 즉 반드시 값이 들어 있어야 하는 컬럼에는 NOT NULL 제약조건을 만들어 사용한다. 컬럼명 데이터타입 NOT NULL CREATE TABLE e.. 2020. 9. 13.
[Oracle] DataType / 오라클 데이터 타입의 종류 데이터 타입(DataType)이란 컬럼이 저장되는 데이터 유형을 말하며, 오라클에서는 기본적으로 제공되는 기본 데이터 타입(원시 데이터 타입)과 사용자 정의 데이터 타입으로 구분할 수 있다. 사용자 정의 타입이란 사용자가 직접 기본 데이터 타입을 혼합해 만들 수 있는 타입이다. 1. 문자 데이터 타입 문자나 문자열 데이터는 문자형 데이터에 속하며, 오라클에서 제공하는 문자형은 다음과 같다. 데이터 타입 설명 CHAR (크기[ BYTE | CHAR ]) 고정길이 문자, 최대 2000byte, 디폴트 값은 1byte VARCARCHAR2 (크기[ BYTE | CHAR ]) 가변길이 문자, 최대 4000byte, 디폴트 값은 1byte NCHAR (크기) 고정길이 유니코드 문자(다국어 입력 가능), 최대 20.. 2020. 9. 13.
[Oracle] 데이터베이스 객체 데이터베이스 객체란? 데이터베이스 내에 존재하는 논리적인 저장 구조를 말한다. 오라클과 같은 DBMS가 데이터를 관리하려면 데이터를 어딘가에 저장해 관리해야 하는데, 이런 목적을 달성하기 위해 필요한 모든 논리적인 저장 구조가 데이터베이스 객체이다. 데이터베이스 객체의 종류 데이터베이스 객체 설명 테이블 데이터를 담고 있는 객체 뷰 하나 이상의 테이블을 연결해 마치 테이블인 것처럼 사용하는 객체 인덱스 테이블에 있는 데이터를 빠르게 찾기 위한 객체 시노님 데이터베이스 객체에 대한 별칭을 부여한 객체 시퀀스 일련번호 채번을 할 때 사용되는 객체 함수 특정 연산을 하고 값을 반환하는 객체 프로시저 함수와 비슷하지만 값을 반환하지는 않는 객체 패키지 용도에 맞게 함수나 프로시저를 하나로 묶어 놓은 객체 2020. 9. 13.
[Oracle] 테이블 스페이스 생성 및 사용자 생성 테이블 스페이스 생성 오라클은 데이터를 관리하는 시스템이다. 따라서 데이터를 어딘가에 저장해 놓고 사용해야 하는데, 데이터 저장 단위 중 가장 상위 개념이 바로 테이블스페이스다. 데이터 저장 단위는 물리적, 논리적 단위로 나눌 수 있다. 물리적 단위는 물론 파일이며, 논리적 단위는 크기 순으로 ‘데이터 블록 → 익스텐트 → 세그먼트 → 테이블스페이스’다. 블록이 여러 개 모여 익스텐트를, 여러 개의 익스텐트가 모여 세그먼트를 구성하는 식이다. 저장 단위는 4개지만, 실제로 SQL을 이용해서 데이터를 조작하는 대상은 테이블이다. 테이블들을 담을 커다란 공간이 바로 테이블스페이스며, 지금부터 새로운 테이블스페이스를 만들어 보자. 테이블스페이스를 만드는 방법은 2가지다. 스크립트로 만들 수도 있고, EM(엔터.. 2020. 9. 13.
오라클 에디션별 특징/주요 오라클 서비스 오라클 에디션별 특징 오라클 데이터베이스를 설치하기 전 각 에디션별 특징을 살펴 보면 다음과 같다. • 엔터프라이즈 에디션(EE): 오라클 데이터베이스의 모든 기능을 사용할 수 있는 에디션 • 스탠다드 에디션(SE) : 데이터베이스의 기본 기능이 모두 지원되며 중소기업용으로 사용하기 적당함 • 스탠다드 에디션 원(SEO) : 스탠다드 에디션과 비슷하나 단일 CPU 환경에서 사용 가능 • 익스프레스 에디션(XE) : 무료로 사용할 수 있는 버전으로 상용으로 사용하려면 기능상 제한이 있음 • 퍼스널 에디션(PE) : 개인용으로 엔터프라이즈 에디션의 대부분의 기능이 지원되지만 단일 사용자만 사용 가능 주요 오라클 서비스 성공적으로 설치되면 PC는 ‘myoracle’이라는 데이터베이스를 서비스하는 오라클 서버로.. 2020. 9. 13.
[pl/sql] 변수, 상수, 매개변수, 함수, 프로시저의 명명법 “이렇게 지어야 한다”라는 규칙은 없다. 변수 variable의 맨 앞 글자인 v +데이터 타입의 앞 글자(문자는 s, 숫자는 n, 날짜는 d) + 변수 설명(테이블 컬럼 값을 사용할 때는 컬럼명) 예) vs_emp_name ,vn_employee_id, vd_hire_date 상수 constant의 맨 앞 글자인 c + 나머지는 변수와 동일 예) cn_pi (파이 값), cn_inch_to_meter (인치를 미터로 변환하는 상수) 매개변수 parameter의 맨 앞 글자인 p + 나머지는 변수와 동일 예) pn_employee_id, pn_salary, pd_retire_date 함수 get (값을 가져오므로) + 함수 설명 약자 + fn get_dep_name_fn (부서명을 가져오는 함수), ge.. 2020. 7. 31.
[DataBase] DBMS의 개념 DBMS(Database Management System) : 데이터 베이스 관리 시스템 - 다수의 사용자들이 DB내의 데이터를 접근할 수 있도록 해주는 소프트웨어 - DBMS는 보통 Server 형태로 서비스를 제공함 - ex) Oracle, MySQL, MariaDB, PostgreSQL 등 - DBMS Server에 직접 접속해서 동작하는 클라이언트 프로그램의 문제점 1. 클라이언트에 로직이 많아지고 이에 따라 클라이언트 프로그램의 크기가 커진다. 2. 로직이 변경될 때마다 매번 배포가 이루어져야한다. 3. 클라이언트에 대부분의 로직이 포함되어 배포되기때문에 보안에 취약하다. 4. 이러한 문제점을 해결하기 위해 등장한 것이 MiddleWare MiddleWare - Client -> MiddleWa.. 2020. 7. 30.
반응형