• MySQL매뉴얼
    • MySQL 5.6 매뉴얼
    • MySQL 5.1 매뉴얼
    • MySQL 5.0 매뉴얼
    • MySQL HA 매뉴얼
  • 기술문서
    • Xtrabackup 구성
    • 메모리 사용량 모니터링
  • 라이선스
  • 온라인문의
  • 회사소개
  • → 목 록 (MySQL5.6 한글메뉴얼) [close]
  • 1. MySQL 5.6 새로운 기능
  • 2. MySQL 설치 및 업그레이드
  • 3. MySQL Tutorial
  • 1. 서버에 연결 그리고 서버와 연결 끊기
    2. 쿼리 입력
    3. 데이터베이스 생성 및 사용
    1. 데이터베이스 생성 및 선택
    2. 테이블 만들기
    3. Loading Data into a Table
    4. 테이블에서 정보 검색
    4. 데이터베이스 및 테이블 정보 가져 오기
    5. 배치 모드에서의 MySQL의 사용
    6. 일반적인 쿼리의 예제
    7. Apache와 MySQL 사용
  • 4. MySQL 프로그램
  • 5. MySQL 서버관리
  • 6. 보안
  • 7. 백업 및 복구
  • 8. 최적화
  • 9. Language Structure(언어구조)
  • 10. Character Sets(Globalization)
  • 11. 데이터형(Data Types)
  • 12. 함수와 연산자
  • 13. SQL 문법
  • 14. InnoDB 스토리지 엔진
  • 15. 기타 스토리지 엔진
  • 16. 고가용성 및 확장성
  • 17. 리플리케이션
  • 18. MySQL Cluster
  • 19. 파티셔닝
  • 20. Stored Programs and Views
  • 21. INFORMATION_SCHEMA
  • 22. PERFORMANCE SCHEMA
  • 23. 컨넥터 및 API
  • 24. MySQL 확장
  • 25. MySQL Enterprise Edition
  • 26. MySQL Workbench
  • 27. 제약 및 제한
  • 28. MySQL 5.7 새로운 기능

3.3.2 테이블 만들기

데이터베이스 만들기 쉬운 부분이지만, SHOW TABLES 알 수 있듯이이 시점에서 비어 있습니다.

 mysql> SHOW TABLES;
 Empty set (0.00 sec)

어려운 부분은 데이터베이스의 구조, 즉 어떤 테이블이 필요 각 테이블에 어떤 컬럼을 포함 시킬지를 결정하는 것입니다.

각 펫 기록을 저장하는 테이블이 필요합니다. 이 테이블에는 pet 이라는 이름을 붙일 수 적어도 각 애완 동물의 이름을 포함해야합니다. 이름 자체에는 깊은 의미가 없으므로이 테이블에는 다른 정보도 포함시킬 것입니다. 예를 들어, 가족의 여러 멤버가 애완 동물을 기르고있는 경우 각 애완 동물 소유자를 기록 할 수 있습니다. 종이나 성별 등의 기본적인 설명도 기록 할 수 있습니다.

나이는 어떨까요. 중요한 정보는 있지만 데이터베이스에 저장하려면 적합하지 않습니다. 나이는 시간이 지남에 따라 변화하기 때문에 기록을 수시로 업데이트 할 필요가 생깁니다. 대신, 생년월일 등의 고정 값을 저장하는 것이 좋습니다. 이렇게 해두면 나이가 필요할 때 현재 날짜와 생년월일의 차이로 계산 할 수 있습니다. MySQL은 날짜 연산을 수행하는 함수가 준비되어 있기 때문에, 이것은 어렵지 않습니다. 나이 대신 생년월일을 저장하는 것에는 다른 장점도 있습니다.

  • 예를 들어, 애​​완 동물의 생일이 다가 오면 알림을 생성하는 등의 작업에 데이터베이스를 사용할 수 있습니다. (이러한 쿼리는 의미가 없다고 판단되면 현재 주와 달에 생일 축하 메시지를 전송해야하는 클라이언트를 식별하기 위해 비즈니스 데이터베이스를 사용하는 경우와 컴퓨터 지원 접객 점 에서 같은 문제가 있는지에 주목하십시오.)

  • 현재 날짜가 아닌 다른 날짜를 기준으로하여 나이를 계산 할 수 있습니다. 예를 들어, 데이터베이스에 사망 날짜를 저장하면 애완 동물이 몇 살에 죽었는지를 쉽게 계산할 수 있습니다.

pet 테이블에 포함하면 도움이 될 것 인 정보 외에도 있겠지만 지금까지 언급 한 이름 (name) 소유자 (owner), 종 (species), 성별 (sex), 생년월일 (birth) 및 사망 연월일 (death)으로 충분합니다.

CREATE TABLE 문을 사용하여 테이블의 레이아웃을 지정합니다.

 mysql> CREATE TABLE pet (name VARCHAR(20), owner VARCHAR(20),
     -> species VARCHAR(20), sex CHAR(1), birth DATE, death DATE);

name , owner 및 species 의 각 컬럼은 컬럼 값의 길이가 변화하기 때문에 이러한 컬럼에 VARCHAR 를 선택하는 것이 좋습니다. 이러한 컬럼 정의의 길이는 모두 같을 필요는없고, 20 일 필요도 없습니다. 일반적으로 1 에서 65535 까지의 범위에서 가장 적절하다고 생각되는 임의의 길이를 선택할 수 있습니다. 선택이 잘못되어 나중에보다 긴 필드가 필요할 경우에는 MySQL의 ALTER TABLE 문을 사용할 수 있습니다.

애완 동물의 레코드 성별을 나타내는 값으로는 'm' 과 'f' 또는 'male' 과 'female' 등 몇 가지 종류를 선택할 수 있습니다. 단일 문자 'm' 과 'f' 를 사용하는 것이 가장 간단합니다.

birth 컬럼과 death 컬럼에 DATE 데이터 형식을 사용하는 것은 매우 분명한 선택입니다.

테이블을 만든 후에는 SHOW TABLES 에 뭔가 출력 될 것입니다.

mysql> SHOW TABLES;
+---------------------+
| Tables in menagerie |
+---------------------+
| pet                 |
+---------------------+

예상대로 테이블이 생성 된 것을 확인하려면 DESCRIBE 문을 사용합니다.

 mysql> DESCRIBE pet;
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| name    | varchar(20) | YES  |     | NULL    |       |
| owner   | varchar(20) | YES  |     | NULL    |       |
| species | varchar(20) | YES  |     | NULL    |       |
| sex     | char(1)     | YES  |     | NULL    |       |
| birth   | date        | YES  |     | NULL    |       |
| death   | date        | YES  |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+

DESCRIBE 문은 테이블의 컬럼의 이름과 형태를 잊은 경우 언제든지 사용할 수 있습니다.

MySQL 데이터 형식에 대한 자세한 내용은 11 장 "데이터 형식" 을 참조하십시오.

서울시 강남구 영동대로 602 6층
TEL: 02-6061-0006  /  E: csr@mysqlkorea.com
주식회사 이노클러스터  등록번호 : 727-86-02261
Copyright © innocluster Co. ltd. all rights reserved