728x90
반응형
SMALL

목차

  1. 테이블
  2. 스키마
  3. 테이블 만들기
  4. 데이터 타입
  5. 이진 데이터 타입
  6. 날짜 데이터 타입
  7. 제약 조건(constraint)
    1. not null
    2. unique
    3. primary key
    4. foreign key
    5. default
    6. enum

 

1. 테이블(table)

데이터를 행과 열로 스키마에 따라 저장할수 있는 구조
(엑셀의 시트와 같다)

2. 스키마(schemas)

데이터 베이스의 구조와 제약조건에 관한 명세를 기술한 집합의 의미
(전체적인 구조와 그 구조를 만들때의 조건같은것)

3. 테이블 만들기

create table 테이블명 (
필드명1 데이터타입 제약조건,
    (행)  (ex: int) (절대 데이터가 비면안돼, 숫자가 자동으로 증가할거야 등등)
    필드명2 데이터타입 제약조건,
    ....
    필드명n 데이터타입 제약조건
)

4. 데이터 타입(data type)


-숫자형 타입

    tinyint:          정수형 데이터 타입(1byte), -128 ~ 127 표현
    smallint:       정수형 데이터 타입(2byte), -32768 ~ 32767 표현
    mediumint:   정수형 데이터 타입(3byte), -8388608 ~ 8388607 표현
    int:                정수형 데이터 타입(4byte), 어쨋든 큼 -21 ~ 21억  
                      # 다른 프로그램에서도 int형이 기본값이기 때문에 보통 int를 디폴트로 사용하는것을 권장
    bigint:           정수형 데이터 타입(8byte), 대충 무제한
    float:             부동소수형 데이터 타입(4byte)
    decimal        (길이, 소수): 고정소수형 데이터 타입 (길이 + 1byte)
    double:         부동 소수형 데이터 타입(8byte) # 실수형에서는 더블이 가장 기본형이기때문에 속도가 빠르다


    -문자형 타입

    char(케릭터로 보통읽음): 고정길이 데이터 타입(최대 255byte 까지 저장가능)
                                           # 단점: 지정된 길이보다 짧은 데이터 입력시 나머지 공간을 공백으로 채움
    varchar:                             가변길이 데이터 타입(최대 65535byte)
                                           # 지정된 길이보다 짧은 데이터 입력시 나머지 공간은 채우지 않음
    text:                                   문자열 데이터 타입(최대 65535byte)
    longtext:                            무제한 문자열 데이터 타입

 

5. 이진 데이터 타입

# 0, 1로 된 데이터
# 영상, 음악,등등이 담겨질수 있는데이터 타입,
# 보통 영상,이런 파일들은 서버의 디렉토리(폴더)에 저장되어있고 DBMS에서는 그 주솟값만 저장하여 사용한다.

    binary or byte: char의 형태의 이진 데이터 타입, (최대 255byte)
    varbinary:        varchar의 형태의 이진데이터 타입(최대 65535byte)

6. 날짜 데이터 타입

    date:           날짜(연,월,일) 형태의 데이터 타입(3byte)
    time:           시간(시,분,초) 형태의 데이터 타입(3byte)
    datetime:    날짜와 시간 형태의 데이터 타입(8byte) 
    timestamp: 1970년 1월 1일 0시 0분 0초 부터 시작한 ms 타입의 시간이 저장(4byte)

7. 제약 조건(constraint)

데이터의 무결성을 지키기 위해 데이터를 입력받을때 실행되는 검사규칙을 의미


7-1 not null:
      - null 값을 허용하지 않음
      - 중복값을 허용
7-2 unique:
      - 중복값을 허용하지 않음
      - null 값을 허용
      - 유니크 제약조건뒤에 not null도 같이 사용가능
7-3 primary key:
      - null 값을 허용x
      - 중복값 허용x
      - 테이블에 단 하나만 사용가능
      - 테이블의 대표

7-4 foreign key
     - primary key를 가진 테이블과 연결하는 역할
      (ex. 테이블이 서로 다를경우, 게시판에서 회원만 글 작성 가능하게 하고싶을때

             회원id에 프라이머리, 게시판쪽에 foreign key 넣어주면됌)

7-5 default
      - null 값을 삽입할 때 기본이 되는 값을 저장할 수 있게 함

7-6 enum
      - 원하는 범위를 설정하고 해당 범위의 값만 저장 

      # (왠만하면 안씀, 권장하지 x )
      ex) enum('남자', '여자') 하면 남자,여자 여야만 저장가능 아니면에러
 

728x90
반응형
LIST

'DBMS > MySQL' 카테고리의 다른 글

MySQL- View  (0) 2023.03.21
MySQL- 사용자 추가하기  (0) 2023.03.21
MySQL- 데이터 조작(select)  (0) 2023.03.16
MySQL- 연산자  (0) 2023.03.16
MySQL - table  (0) 2023.03.15

+ Recent posts