경험의 기록

데이터베이스 생성

CREATE DATABASE 데이터베이스명CHARACTER SET utf8COLLATE utf8_general_ci

utf8 부분은 인코딩 방식 (주로 utf8 사용)

 

데이터베이스 삭제

DROP DATABASE 데이터베이스명

 

데이터베이스 열람

SHOW DATABASE

 

데이터베이스 선택

USE 데이터베이스명

 

Table

데이터가 실질적으로 저장되는 저장소

 

Schema

테이블에 적재될 데이터의 구조와 형식을 정의 하는 것

 

 

테이블 생성

CREATE TABLE 테이블명 {

    칼럼명1 data_type,

    칼럼명2 data_type,

}

 

테이블 리스트

SHOW 테이블명

 

테이블 스키마 열람

DESC 테이블명

 

테이블 제거

DROP TABLE 테이블명

 

데이터 삽입

1. INSERT INTO 테이블명VALUES (값1, 값2, ....)

2. INSERT INTO 테이블명 (컬럼1, 컬럼2, ...)VALUES (값1, 값2, ....)

2번 방식으로 특정부분 빼고 삽입 가능

 

데이터 변경

UPDATE 테이블명SET 컬럼1 = 1의 값, 컬럼2 = 2의 값WHERE 대상이 될 컬럼명 = 값

 

데이터 삭제

DELETE FROM 테이블명WHERE 삭제하려는 컬럼명 = 값

 

TRUNCATE 테이블명

- 테이블의 전체 데이터를 삭제

 

데이터 조회 (SELECT)

SELECT 컬럼명1, 컬럼명2 FROM 테이블명

- 테이블에서 컬럼값 조회

 

SELECT 컬럼명1, 컬럼명2 FROM 테이블명 WHERE 컬럼명 = 값

- 조건 넣어서 조회

 

SELECT 컬럼명1, 컬럼명2 FROM 테이블명 LIMIT offset, 조회 할 갯수

- offset에서부터 몇개까지만 조회할지

 

그룹핑

SELECT * FROM 테이블명 GROUP BY 그룹핑 할 기준 컬럼명

 

정렬

SELECT * FROM 테이블명 ORDER BY 정렬의 기준으로 사용할 열 DESC or ASC

- DESC(내림차순), ASC(오름차순)

- 기준을 여러개 적용할 경우 앞 기준부터 적용

 

인덱스

  • primary : 중복되지 않는 유일한 키
  • normal : 중복을 허용하는 인덱스
  • unique : 중복을 허용하지 않는 유일한 키 (primary 와는 다르게 여러개의 unique키를 지정할 수 있음)
  • foreign : 다른 테이블과의 관계성을 부여하는 키

 

JOIN

SELECT 조인할 테이블명 FROM 테이블명
LEFT JOIN 테이블명 
ON 조건

- 두개이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색

 

테이블 복제

CREATE TABLE 테이블명 AS SELECT * FROM 복제할 테이블명

 

VIEW 생성

- 가상 테이블의 개념

CREATE VIEW 뷰이름[(속성이름[,속성이름])]AS SELECT

 

VIEW 삭제

DROP VIEW 뷰이름 옵션

- 뷰는 변경 불가능 하므로 수정하고 싶은 경우 삭제한 후 재생성 해야함

 

외래키 지정(옵션)

1. RESTRICT : 자식 데이터가 남아 있으면 부모 데이터 삭제/변경 시 변경/삭제가 취소됨

2. CASCADE : 자식 데이터가 남아 있으면 부모 데이터 삭제/변경 시 함께 변경/삭제됨

3. NO ACTION : RESTRICT와 동일

4. SET NULL : 자식 데이터가 남아 있으면 부모 데이터 삭제/변경 시 자식 데이터값은 NULL로 세팅됨

 

키의 종류

※ 키? 릴레이션에 존재하는 튜플을 식별하기 위한 식별자

  • 슈퍼키 : 튜플을 구별하기 위해 한 개 이상의 속성의 집합으로 이루어진 키 (유일성 만족, 최소성 만족X)
  • 후보키 : 유일성, 최소성을 모두 만족하는 키
  • 기본키 : 후보키 중에서 대표로 지정된 키
  • 대체키 : 기본키를 제외한 후보키
  • 외래키 : 참조하는 릴레이션의 기본키

 

무결성 종류

※ 무결성? 데이터베이스 내에 지정되는 데이터 값들이 항상 일관성을 갖고 데이터의 유효성, 정확성, 안정성을 유지할 수 있또록 하는 제약조건을 두는 데이터베이스의 특성

  • 키 무결성 : 하나의 릴레이션에는 적어도 하나의 키가 존재해야 함
  • 널 무결성 : 속성이 NULL 값을 가질 수 없음
  • 고유 무결성 : 특정 속성에 대해 각 튜플이 갖는 값이 달라야함
  • 개체 무결성 : 한 릴레이션의 기본키를 구성하는 어떠한 속성 값도 널값이나 중복값을 가질 수 없음.
  • 참조 무결성 : 참조할 수 없는 외래키 값을 가질 수 없음.
  • 영역 무결성 : 속성 값들은 정해진 범위 내에 있어야함 ex) 성별- 남,여

정규화 과정

※ 정규화? 개체들에 존재하는 데이터 속성의 중복을 최소화하여 일치성을 보장하며 데이터 모델을 단순하게 구성하는 과정

  • 1NF : 모든 속성이 원자 값을 가짐
  • 2NF : 부분 함수 종속을 제거하여 완전 함수 종속으로
  • 3NF : 이행적 함수 종속 제거
  • BCNF : 결정자이면서 후보키가 아닌 것 제거
반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading