데이터 베이스 (Data Base) 데이터베이스를 저장하고 관리하는 역할을 하는 소프트웨어 DBMS Data Base Management > CREATE USER USER1 IDENTIFIED BY 1111; USER명 : USER1 비밀번호 : 1111 > G
데이터베이스 보안 모든 사용자가 데이터베이스에 접근하거나 수정이 가능하다면 보안상 큰 문제가 발생한다. 각 사용자마다 최소한의 권한을 주어 데이터베이스의 보안을 유지해야 한다. 데이터베이스 사용자 오라클 관리자 계정 >SYS SYSDBA 권한을 가짐 (Oracle
Oracle 데이터베이스를 배포할 때 미리 만들어 둔 계정연습할 때 필요한 샘플 데이터가 포함되어 있다.잠김(LOCK) 상태이므로 잠김을 해제해야 한다.SYS / AS SYSDBAALTER USER SCOTT IDENTIFIED BY TIGE
데이터를 체계화하여 행과 열의 집합으로 구성한 것표 형태의 데이터RDB에서는 테이블을 릴레이션(Relation)테이블 : 릴레이션 Relation , 개체 Entity행 : 로우 Row , 레코드 Record , 튜플 Tuple열 : 칼럼 Colu
키(Key) 하나의 테이블에서 각 로우(Row)를 고유(Unique)하게 식별(Identify)할 수 있는 칼럼(Column) 또는 칼럼의 조합이다. 키(Key) 종류 슈퍼키 `Super` Key 후보키 `Candidate` Key 기본키 `Primary` Key 대
하나의 레코드가 다른 테이블의 레코드 한 개와 연결1:1 관계는 자주 사용하지 않는다.한 쪽의 엔티티가 관계를 맺은 다른 엔티티 쪽의 여러 객체를 가질 수 있다.현실 세계에서 가장 흔한 관계예) 어머님이 자식을 3명 낳으셨다. 어머님(1) : 자식(3)관계
현실 세계의 업무적인 프로세스를 컴퓨터 세계로 데이터베이스화 하기 위한 과정이다.요구조건 분석 → 개념적 설계 → 논리적 설계 → 물리적 설계 →구현 → 운영 → 감시 및 개선개체 타입과 이들 간의 관계 타입을 이용해 현실 세계를 개념적으로 표현DBMS에 독립적인 개념
Data Query Language데이터 질의어테이블의 데이터를 조회/검색데이터베이스에 변화가 없으므로 COMMIT 없다. (트랜잭션의 대상이 아니다.)⑤ SELECT 칼럼① FROM 테이블② WHERE 조건식③ GROUP BY 그룹화④ HAV
Data Manipulation Language정의된 데이터베이스에 새로운 레코드(ROW/TUPLE\_)를 삽입하거나 수정하거나 삭제하는 등의 역할을 하는 SQL문TABLE이나 View 등 데이터베이스 객체에 새로운 데이터를 삽입하거나, 기존 데이터를 갱신 또는 수정할
일련번호를 생성하는 데이터베이스 객체자동으로 순차적으로 증가하는 번호를 생성기본키(PK)에서 중복값을 방지하기 위해 주로 사용 (인공키)NEXTVAL를 이용하면 새로운 번호가 생성CURRVAL를 이용하면 현재 번호를 확인최초 1번은 NEXTVAL를 사용해야 CURRVA
Data Query Language데이터 질의어테이블의 데이터를 조회/검색데이터베이스에 변화가 없으므로 COMMIT 없다. (트랜잭션의 대상이 아님)⑤ SELECT 칼럼① FROM 테이블② WHERE 조건식③ GROUP BY 그룹화④ HAVING 그룹화
DUMMY 칼럼에 'X' 값을 하나 가지고 있는 테이블아무 의미 없는 테이블오라클에서는 FROM절이 필수이기 때문에 테이블이 필요 없는 조회문에서 DUAL 테이블을 사용한다.질의 결과TO_NUMBER('문자열') : 문자열 형식의 숫자를 숫자 형식으로 변환TO_CHAR
아직 정의되지 않은 값 또는 배정이 안 된 상태이다. 빈 값(공백)이나 0과는 다른 값이므로 주의해야 한다.NULL 값과 연산(+ - \* /)을 해도 무조건 NULL이 나온다NVL(칼럼, 칼럼값이 NULL일 때 대신 사용할 값)ISNULL(표현식1, 표현식2) 과 동
통계(합계, 평균, 최대, 최소, 개수 등)를 낼 때 사용NULL값을 연산에서 제외종류SUM(칼럼) 칼럼 합계AVG(칼럼) 칼럼 평균MAX(칼럼) 칼럼 최대값MIN(칼럼) 칼럼 최소값COUNT(칼럼) 칼럼에 입력된 데이터의 개수 각 칼럼(KOR, ENG,
POWER(A, B) : A의 B제곱SQRT(A) : 루트 AABS(A) : A의 절대값MOD(A, B) : A를 B로 나눈 나머지SIGN(A) : A가 양수면 1, 음수면 -1, 0이면 0을 반환CEIL(A) : 실수 A를 정수로 올림FLOOR(A) : 실수 A를 정
현재 날짜 SYSDATE현재 시간 SYSTIMESTAMPTO_CHAR 함수 : 날짜를 문자로 변환해서 조회EXTRACT(단위 FROM 날짜)단위(년,월,일,시,분,초) 추출은 TO_CHAR 함수로도 가능하다.하루(1일)를 숫자 1로 처리 / 12시간을 숫자 0.5로 처
UPPER(칼럼) : 칼럼의 데이터를 모두 대문자로 변환LOWER(칼럼) : 칼럼의 데이터를 모두 소문자로 변환INITCAP(칼럼) : INITIAL CAPITAL, 첫 글자는 대문자 나머지는 소문자로 변환FIRST_NAME 칼럼에서 'JAMES' 조회하기LENGTH(
RANK() OVER(ORDER BY 순위구할칼럼 ASC) : 오름차순 순위, 낮은 값이 1등, ASC는 생략 가능 RANK() OVER(ORDER BY 순위구할칼럼 DESC) : 내림차순 순위, 높은 값이 1등같은 값이면 같은 등수(동점)로 처리EMPLOYEES 테이
GROUP BY절에서 지정한 칼럼의 데이터는 하나로 모아서 한 번만 조회가 된다.SELECT절에서 조회할 칼럼은 "반드시" GROUP BY절에 존재해야 한다.EMPLOYEE_ID 조회하려면 GROUP BY절에 EMPLOYEE_ID가 있어야 한다.집계함수(그룹함수)는 G
2개 이상의 테이블을 조회하는 방법조회할 테이블들은 관계를 줄 수 있어야 한다.JOIN 문법콤마(,) 문법카테젼 곱, 각 테이블의 모든 행을 조인행 : A와 B의 행 곱 / 열 : A와 B의 행 합 많은 행을 순식간에 만들 수 있다. (기초데이터 작성용)조인 조건을
메인 쿼리(MAIN QUERY)에 포함하는 하위 쿼리(SUB QUERY)서브쿼리는 메인쿼리에 괄호()를 이용해서 포함시킨다.항상 서브쿼리를 먼저 실행하고, 서브쿼리 실행 결과를 메인쿼리에서 사용한다.SELECT절 : 스칼라 서브쿼리FROM절 : 인라인뷰WHERE절
빠른 검색을 위해서 특정 칼럼에 인덱스를 등록한다.인덱스가 등록된 칼럼은 검색이 빠르다.인덱스가 자동으로 등록되는 경우PK로 지정한 칼럼UNIQUE 제약조건을 가진 칼럼수정(갱신)이 자주 발생하는 칼럼에 인덱스를 부여하면 도리어 성능이 떨어진다. 인덱스 생성비고유 인덱
가상 테이블디스크에 저장된 테이블이 아니다. (쿼리만 저장해 둔 형태)자주 사용하는 복잡한 쿼리가 있다면 뷰로 저장해 둔다.저장된 뷰는 테이블처럼 SELECT문을 활용하면 된다.뷰로 인한 성능상 이점은 없고, 보안상 이점은 있다.뷰 생성CREATE VIEW 뷰\_이름
PL/SQL > * 오라클의 프로그래밍 처리가 가능한 SQL 프로그래밍 형식 PL/SQL의 데이터(변수, 상수)는 서버메시지로 출력 서버메시지 출력을 위해 최초 1회 설정이 필요 디폴트 : `SET SERVEROUTPUT OFF` `SET SERVEROUTPU
프로시저 (Procedure) 여러 개의 쿼리문을 한 번에 실행 (이체 : UPDATE문 2개) 작성된 프로시저는 EXECUTE문으로 실행 `EXECUTE 프로시저();` 형식 > 프로시저 PROC1 정의(만들기) > 프로시저 PROC1 호출(실행) > 프로시
사용자 함수 (Function) 어떤 값을 반환할 때 사용 사용자가 만든 함수의 개념 값을 반환할 때 RETURN을 사용 입력 파라미터 사용 가능 (출력 파라미터 사용 안함) 값을 확인할 수 있도록 SELECT문과 같은 쿼리문에서 호출 형식
트리거 (Trigger) DML (INSERT, UPDATE, DELETE) 수행 후 트리거가 자동으로 수행된다. DML 직전에 수행되는 BEFORE 트리거, 직후에 수행되는 AFTER 트리거가 있다. 기본적으로 작업 수행 행(Row) 단위로 트리거가 적용된다. 형식