데이터 베이스(database)
여러 사람들이 공유, 사용할 목적으로 통합관리 되는 정보의 집합을 말한다. 이를 구조화여 검색과 갱신의 효율화를 추구한다.
탄생 배경p17,8
문제점과 특징을 보완하기 위해 탄생
-> 데이터 베이스 관리 시스템(Date Base Management
-> 객체,관계형 데이터베이스 관리시스템 중, 주로 관계형을 주로 사용한다(RelationalDate Base Management System)
DBMS 객체 종류
" 테이블, 뷰 , 시퀀스, 인덱스, 시노님, 함수, 프로시져"
p20
테이블(DEPT department)
- 테이블 : 자료가 저장되는 곳
컬럼 : 테이블 내에 존재하는 데이터들의 타이틀을 뜻함
로우 : 테이블 내에 존재하는 실질적인 데이터들의 행을 말함
p21
데이터사전(data dictionary)
- 각 테이블의 이름과 그에 관한 정보들을 저장하는 공간을 말한다.
p27 사용 용도에 따른 SQL
SQL (Structured Query Language)의 탄생배경
- 각각의 DBMS가 다른 데이터베이스의 구조를 가지게되어, 혼동을 방지하기 위해 만들어짐(각 DBMS마다 공통된 SQL을 이용해 통합성을 제공하게 됨)
Oracle DBMS는 1사용자에 1스키마만을 가진다 (특이사항)
-> 스키마는 객체의 집합을 말한다.
p28->33 select구문의 사용
각 컬럼의 데이터는 각각의 자료형을 가지며, 숫자, 날짜, 문자의 자료형을 가진다.
NUMBER(8.2)
총8자리이며 소수자리가 2자리인 데이터를 말함(정수가 6자리)
CHAR(2BYTE)
2바이트의 문자열을 말한다.
-> 고정된 자리수의 데이터를 가질때 사용한다.
VARCHAR(10BYTE)
최대 10바이트를 사용하며, 가변문자열임을 의미함(더 적게 사용할 경우 데이터를 더적게 할당함 [CHAR보다 데이터를 효율적으로 사용할수 있으나 속도가 상대적으로 느리다.]
-> 데이터의 자리수가 가변으로 변할때 사용한다.
p28 SELECT문
SELECT * FROM employees;
-> employees라는 테이블의 모든 데이터를 표시한다.
SELECT * FROM tab;
-> 존재하는 data dictionary
p33
SQL*PLUS
- CUI형태의 SQL
p44 DESC문(테이블 구조를 보기)
-> DESC 테이블이름
P48 오라클의 데이터 타입
-> 데이터에 맨앞에 0이 붙을 경우, 생략되지 않게하기 위해 데이터 타입을 이용해야 한다.
P51 - 52
FROM부터 읽어나간뒤 맨앞으로 돌아가서 읽는다..
-> select * from emp;
-> emp 테이블에 존재하는 데이터들을 보여준다.
데이터들의 산술연산이 가능하다. (다른 언어와 달리 나머지 값은 함수를 활용해야 한다.)
SELECT employee_id, last_name, salary, salary*10
FROM employees
p58-59
null값과 산술연산이 만나면 데이터가 null이 된다.
null을 다른값으로 변환하는 함수(해당 하는 컬럼에 null값이 있다면, 그값을 0으로 바꿔준다)
-> NVL(컬럼명, 변환할 값)
-> "" 표를 이용하면 특수문자, 공백 한글등이 가능하다
문자열 결합연산자 : 문자열 || 문자열
-> 두개의 문자를 결합할때 사용한다.
SELECT employee_id, first_name || last_name, hire_date
FROM employees
DB에서의 문자열 추가 : '문자열'
-> DB의 데이터에 원하는 문자열을 추가한다.
SELECT employee_id, first_name || ', ' || last_name, hire_date
FROM employees
P66 DISTINCT 키워드
P96~102 WHERE조건 과 비교 연산자(SELECTION 단계)
-> 원하는 로우만 걸러내는데 사용한다.
P101
-> SQL문법과 달리 데이터값에는 대소문자를 구분한다.
null값 비교연산자 : IS NULL, IS NOT NULL
p103
-