MySQL 기초

Table

Table

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

스키마(schema)란?

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

테이블 생성

CREATE TABLE table_name (
    칼럼명1 data_type,
    칼럼명2 data_type
)
CREATE TABLE `student` (
    `id`  tinyint NOT NULL ,
    `name`  char(4) NOT NULL ,
    `sex`  enum('남자','여자') NOT NULL ,
    `address`  varchar(50) NOT NULL ,
    `birthday`  datetime NOT NULL ,
    PRIMARY KEY (`id`)
);

테이블 리스트

SHOW tables;

테이블 스키마 열람

DESC `테이블명`

테이블 제거

DROP TABLE `테이블명`

데이터타입

CHAR( ) 0 to 255 고정문자 길이
VARCHAR( ) 0~65535 가변 문자 길이
TINYTEXT 최대 255 문자길이
TEXT 최대 65535 문자길이
BLOB 최대 65535 문자길이
MEDIUMTEXT 최대 16777215 문자길이
MEDIUMBLOB 최대 16777215 문자길이
LONGTEXT 최대 4294967295 문자길이
LONGBLOB 최대 4294967295 문자길이

 

TINYINT( ) -128 ~ 127 정수형
0 ~ 255 정수형, UNSIGNED
SMALLINT( ) -32768 ~ 32767, 정수형
0 ~ 65535, 정수형, UNSIGNED
MEDIUMINT( ) -8388608 to 8388607, 정수형
0 to 16777215 , 정수형, UNSIGNED
INT( ) -2147483648 ~ 2147483647 정수형
0 ~ 4294967295, 정수형, UNSIGNED
BIGINT( ) -9223372036854775808 ~ 9223372036854775807, 정수형
0 ~ 18446744073709551615, 정수형, UNSIGNED.
FLOAT 작은 부동소수점
DOUBLE( , ) 큰 부동소수점
DECIMAL( , )  

 

DATE YYYY-MM-DD.
DATETIME YYYY-MM-DD HH:MM:SS.
TIMESTAMP YYYYMMDDHHMMSS.
TIME HH:MM:SS.

 

ENUM ( ) 정해진 값을 강제
SET  

 

댓글

댓글 본문
작성자
비밀번호
  1. NamJin Kim
    정확한 이유를 모르겟습니다 안되네요 ㅠㅠ
  2. NamJin Kim
    세번째 강의 phpmyadmin 버전이 올라가서 그런지 실습이 안되네요
  3. silverline
    감사합니다..^^
  4. 감사합니다~ !
  5. JustStudy
    고맙습니다
  6. lovetoken
    혹시 기존에 있는 table 의 제목을 변경할 수 있는 방법은 없나요?
  7. 고맙습니다. 아주 좋은 심화학습이 되었네요^^
    대화보기
    • Luke Lee
      감사합니다.
      대화보기
      • Changsik Jang
        강좌의 내용중에서 char , varchar 가 나옵니다.

        char vs varchar 는 아주 오래전에 정리되어 varchar 를 선호하고 있습니다.

        이글 또한 오래된것이지만 한번 읽어보시길...

        http://hyeonstorage.tistory.com/290

        http://okky.kr......655
      • WayneKing
        아무리 생각해도 난 너를~
      • elsa
        아무리 생각해도 not null을~♬
      • 조신부리
        감사합니다
      • 육점이
        감사합니다.!!!!
      • Soori
        버전이 올라가서 그런건지 문법이 좀 바뀌었어요. 변수는 ' ' 생략해야 해요. 그러니깐...
        CREATE TABLE student (
        id tinyint NOT NULL ,
        name char(4) NOT NULL ,
        sex enum('남자','여자') NOT NULL ,
        address varchar(50) NOT NULL ,
        birthday datetime NOT NULL ,
        PRIMARY KEY (id)
        );
        value는 그냥 ' ' 붙이는 거구요..
      • 나무마루
        ; 콜론 붙여야하는 것 같습니다. ; 콜론 안 붙이니깐 화살표만 뜨던데요?
        대화보기
        • 샤핀
          감사합니다. ^^
        • 샤핀
          DESC `테이블명` - > DESC `테이블명`;
          DROP TABLE `테이블명` -> DROP TABLE `테이블명`;

          둘다 ; 콜론 붙여야 되는 거 아닌가요?
        • cloud9osh
          다음 강좌 보니 답글에 해결방법이 있었네요....;;
          set names euckr;

          위 명령어를 실행하고 나니 제대로 되었습니다~~^^
        • cloud9osh
          저는 bitnami를 설치해서 사용중인데요.
          mysql monitor에서 한글 입력 문제가 발생합니다.
          cmd창에서 mysql monitor를 사용하면 sex의 enum(' 다음의 한글이 깨져서 그런지
          DESC student로 조회했을때 Type에 enum(' 까지만 들어가 있네요.

          phpMyAdmin을 사용하여 입력하면 phpMyAdmin상에서는 잘 입력됩니다만,
          phpMyAdmin에서 만든 table을 다시 mysql monitor에서 조회를 해보면 이번에는
          enum('?6옄','?b옄') 이렇게 한글이 깨진채로 입력이 된 것처럼 나옵니다.

          mysql monitor에서 제대로 한글이 표현되고 입력되려면 어떻게 하면 좋을까요?~~^^
        • egoing
          어이쿠 제가 실수 했네요. 수정했습니다.
          그리고 아래의 링크가 도움이 될 것 같습니다.
          http://ra2kstar.tistory.com/82
          대화보기
          • DBChobo
            VARCHAR는 최대 255가 아니라고 알고 있습니다.

            VARCHAR(n)

            최대 n 까지(<=65535)

            라고 라고 알고 있습니다. TEXT랑 다른점이 있나요?
          • egoing
            예 맞습니다. 수정했습니다. 알려주셔서 감사합니다. :)
            대화보기
            • 건꼬
              "테이블 리스트"에서
              "SHOW TABLES;"가 아닌가요??
            • Chris
              좋은 강의 오늘도 들어봅니다.
            버전 관리
            egoing
            현재 버전
            선택 버전
            graphittie 자세히 보기