본문 바로가기

Database/Oracle8

[국비] SQL 내용정리 Day07 PL/SQL 오라클에서 제공하는 SQL 프로그래밍 기능이다. 일반적으로 프로그래밍과 차이가 있지만, 오라클 내부에서 적절한 처리를 위해서 적용해 줄 수 있는 절차지향적 코드 작성 방식이다. 쿼리문의 집합으로 어떠한 동작을 일괄처리 하기 위한 용도로 사용한다. SET SERVEROUTPUT ON; -- 출력문 활성화 DECLARE -- 변수를 선언하는 구간(선언부) emp_num NUMBER; BEGIN -- 대입/출력문/기타등등 코드를 실행하는 시작구간(실행부) emp_num := 10; dbms_output.put_line(emp_num); -- 출력문 dbms_output.put_line('hello PL/SQL'); -- [EXCEPTION] 옵션 END; -- PL/SQL이 끝나는 구간(종료) -.. 2021. 12. 14.
[국비] SQL 내용정리 Day06 Modeling Quiz 영화 예매 사이트는 회원제로 관리되고 있으나 비회원인 경우에도 예매가 가능하다. 회원 가입을 위해서는 이름, 주민번호, 전화번호, 이메일, 회원 아이디, 비밀번호와 같은 기본적인 정보를 입력해야 한다. 여러 지점에 있는 극장에 대해서 영화를 예매할 수 있다. 예매가 순조롭게 이루어지려면 각 극장 지점명과 위치가 관리되어야 한다. 극장은 여러 개의 상영관이 있으며 각각의 상영관에서는 여러 종류의 영화가 상영된다. 영화표에는 해당 상영관의 좌석이 정해져서 기록되어 있다. 영화표를 예매할 때 고객들은 원하는 좌석을 지정할 수 있으며 예매일자와 예매 수량이 기록된다. 결제방법은 카드결제나 계좌이체 방법이 있다. 영화표를 예매할 때 회원의 경우에 한해서 포인트 점수가 적립된다. 예매한 영.. 2021. 12. 13.
[국비] SQL 내용정리 Day05 뷰(View) 뷰(view)는 테이블 또는 다른 뷰를 기초로 하는 논리적 테이블이다. 하나 이상의 테이블에서 원하는 모든 데이터를 선택해서 사용자 정의하여 나타낸 것이다. 제한적인 자료만 보기 위해 사용하는 가상테이블의 개념이다. 뷰는 기본 테이블로 유도된 가상 테이블이기 때문에 필요한 컬럼만 저장해 두면 관리가 용이해 진다. 뷰는 가상테이블로 실제 데이터가 물리적으로 저장된 형태는 아니다. 뷰를 통해서 데이터에 접근하면 원본 데이터는 안전하게 보호될 수 있다. 단순뷰: 한 개의 원본테이블을 사용해서 생성 복합 뷰: 두 개 이상의 테이블에 의해 생성(조인을 통해 생성한 view) 특징 단순 뷰 복합 뷰 테이블 수 하나 둘 이상 함수 포함 없음 있음 데이터 그룹 포함 없음 있음 뷰를 통한 DML 있음 없음.. 2021. 12. 11.
[국비] SQL 내용정리 Day04 트랜잭션(Transaction) 트랜잭션은 논리적인 작업의 단위이다. 트랜잭션은 분리되어서는 안 될 작업의 단위이다. 트랜잭션의 시작은 실행 가능한 첫 번째 SQL 문장이 실행 될 때 시작한다. 트랜잭션은 COMMIT이나 ROLLBACK문에 의해 명시적으로 종료하거나, DDL이나 DCL 문장 실행으로 자동 커밋되어 종료될 수 있다. 사용자의 데이터베이스 종료 또는 시스템 충돌(Crash)에 의한 데이터베이스 비정상적 종료에 의해 트랜잭션이 종료되어 변경사항이 취소될 수 있다. -- Auto Commit 확인 SHOW AUTOCOMMIT; -- AUTO COOMMIT on SET AUTOCOMMIT ON; -- AUTO COOMMIT off SET AUTOCOMMIT OFF; Autocommit이 Off로.. 2021. 12. 9.
[국비] SQL 내용정리 Day03 서브쿼리 서브쿼리는 다른 SELECT 문장의 절에 내장된 SELECT 문장이다. 서브쿼리를 사용하면 간단한 문장을 강력한 문장으로 만들 수 있다. 테이블 자체의 데이터에 의존하는 조건으로 테이블의 행을 검색할 필요가 있을 때 서브쿼리를 사용하는 것이 유용하다. -- 'Nancy'의 급여보다 급여가 많은 사람을 검색한다. SELECT salary FROM employees WHERE first_name = 'Nancy'; SELECT first_name FROM employees WHERE salary > 12008; 서브쿼리를 사용하려면 () 괄호 안에 명시하고, 서브쿼리절의 리턴행이 1줄 이하여야 한다. 서브쿼리는 비교할 대상이 반드시 하나 들어가야 한다. 쿼리를 해석할 때 서브쿼리절을 먼저 해석한다... 2021. 12. 8.
[국비] SQL 내용정리 Day02 NULL 제거 함수 NVL(컬럼, 변환할 타겟 값) SELECT null FROM dual; SELECT NVL(null, 0) FROM dual; SELECT first_name, NVL(commission_pct, 0) AS comm_pct FROM employees; NULL 제거 함수 NVL2(컬럼, null이 아닐 경우 값, null일 경우 값) SELECT NVL2(null, '널아님', '널') FROM dual; SELECT NVL2(50, '널아님', '널') FROM dual; SELECT first_name, NVL2(commission_pct, 'true', 'false') FROM employees; SELECT first_name, commission_pct, NVL2(commi.. 2021. 12. 7.
[국비] SQL 내용정리 Day01 관계형 데이터베이스 관계형 데이터베이스는 관계들의 모음 또는 이차원 테이블의 모음이다. 파일 시스템과 데이터베이스 시스템의 차이점 데이터의 무결성을 지켜준다. 데이터의 공유 데이터의 정확성과 일관성 중복성의 제거 불일치를 피할 수 있다. 표준화가 가능하다. 데이터의 독립성 보장 -개념화 기법 발달 각 테이블들은 고유한 이름을 갖는다. 중복 문제의 해결 기법 제공: 정규형 데이터의 조작언어의 발달: SQL 관계형 데이터베이스는 테이블(table)들의 모음으로 구성 각 행은 일련의 값들 사이의 관계(relationship) 관계형 데이터베이스는 SQL(Structured Query Language)문을 사용하여 이용되고 수정한다. SQL문 이란? 데이터베이스로부터 데이터를 조회, 삭제, 수정, 변경 등의 작.. 2021. 12. 5.
Oracle Data Base 11g / SQL Developer 설치 데이터베이스의 사전적 의미로 여러 사람이 공유하여 사용할 목적으로 체계화하여 통합, 관리하는 데이터의 집합이다. DBMS (Database Management System) 데이터베이스 관리 시스템은 데이터베이스 내의 데이터를 관리하고 조작하기 위한 소프트웨어라고 보면 된다. 다양한 데이터베이스 관리 시스템이 존재하지만, 그중 오라클 11g 버전을 설치하고자 한다. 오라클 데이터 베이스의 버전도 다양하지만 학습용으로 많이 사용하고 있는 버전은 11g로 보면 된다. Oracle 홈페이지에 찾기가 힘들기 때문에 링크를 통해 설치를 진행하면 된다. 클릭 Oracle DataBase 11g XE Download & Install 링크를 통해 Download를 진행하기 전 OS 운영체제에 맞게 진행하면 된다. (.. 2021. 11. 11.