고객의 정보를
테이블(표)로 정의한후 데이터 저장
(DBMS : 데이터베이스 매니지먼트 시스템)
- 실시간 접속(실시간으로 접근)
- 실시간 변화(계속적인 변화)
- 공유 데이터 (동시에 데이터 공유)
- mysql
- mariaDB
- Oracle
테이블 : 정보를 표로 저장한것
컬럼 : 저장된 표의 하나의 대 제목
컬럼조건 : 컬럼의 속성을 뜻한다 null, unique, 기본키, 외래키 등이 있다
튜플 : 컬럼에 맞는 저장된 한줄의 정보
테이블의 생성, 수정, 삭제의 일련의 작업
생성 : create
삭제 : drop
수정 : alter
튜플의 생성, 수정, 검색, 삭제의 일련의 작업
생성 : insert
수정 : update
검색 : select
삭제 : delete
1. select 문
select 검색할 컬럼
from 대상테이블
[where] 튜플의조건
[group by] 그룹의 조건 , 집계와 통계
[order by] 정렬할 속성
.[ ]:생략가능
실행순서
from - where -group by - order by - select
2. update 문
update 대상테이블
set 수정할 튜플
where 튜플의 조건
3. delete 문
delete
from 대상테이블
where 튜플의 조건
튜블을 식별하기 위해 만든 식별자
튜블 속성에 key라는 식별을 부여
후보키중 선정된 키로 중복(unique)된 값을 가질 수 없으며 최소성(not null)을 가진다
부모 테이블에서 참조할 자식 테이블과 이어주는 컬럼
부모테이블
자식테이블
외래키가 참조하는 컬럼(속성)은 반드시 중복이 없어야 한다
부모테이블과 자식테이블의 외래키는 컬럼명이 같으면 좋다
사용이유
데이터의 정확성과 일관선을 유지하고 보증하는것
종류
테이블간의 관계를 설명해주는 다이그램
- 관계형 DB에서 개체의 관계와 속성을 시각화 한다
- 소프트웨어 기획 단계에서 사용된다
- 서로 가은 시스템 요소와 서로 간의 관계 식별에 도움된다
DB에 일반사용자를 제외한 모든 정보가 있는곳
인덱스
- 목차를 생성한다
select과정의 성능을 향상한다
수정과 삭제 과정의 성능을 향상 시킨다( 수정과 삭제의 행위는 느려진다)
뷰
무결성을 위해 분리해 놓은 테이블을 합쳐서 가상읠 테이블로 만드는 기술
데이터 제어어로 DB에 접근하고 객체들을 사용할 권환부여와 회수하는 명령어
-권한부여, 회수, 제어, 복구
Create user : 계정생성
Grant : 권한부여
Rollback : 원래상태복구
Commit : 물리적인 디스크로 저장, 작업완료
- root는 모든 DB을 사용할수 있는 권한이 있기때문에
일반사용자에게 root을 알려주지 않고 계정을 생성해 권한을 준다- 권한은 개별 테이블 또는 DB 전체가 대상이 될 수 있으며
권한은 DML권알을 각각 부여할수있으며 이중 수정과 삭제 권한이 제일 높다
데이터의 무결성과 효율적인 저장곤간을 위해 분리해놓은 정규화 과정을
클라이언트가 보기 편하게 역정규화 과정을 진행하는것
Join종류
하나의 쿼리문을 리턴값으로 취급해 또 다른 쿼리문에서 사용하는것
종류
스칼라 서브쿼리
- select절에서 사용되는 서브쿼리
- 나타내는 리턴값은 1개여만 사용가능하다
인라인 뷰
- from절에서 사용하는 서브쿼리
- 리턴값을 테이블로 사용할 의도로 사용한다
- 별도의 명칭을 지정해야한다
서브쿼리
- where절에서 이후에 사용되는 서브쿼리
- 단일행일때 단일 비교 연산자 사용가능
- 복수행일때 복수 비교연산자 사용