본문 바로가기

코딩공부/DATABASE2 - MySQL

[3] MySQL 테이블의 생성

테이블의 생성

1. 테이블 column을 생성 

 저장할 데이터의 타입과 구조를 만든다.

2. 테이블에 데이터(Record)를 저장

 

create table in mysql cheat sheet  (*cheat sheet : 컨닝페이퍼)
mysql data type

http://www.mysqltutorial.org/mysql-cheat-sheet.aspx

 

MySQL Cheat Sheet

MySQL cheat sheet provides you the most commonly used statements that help you practice with MySQL more effectively.

www.mysqltutorial.org

CREATE TABLE topic(
id INT(11) NOT NULL AUTO_INCREMENT,
title VARCHAR(100) NOT NULL,
description TEXT NULL,
created DATETIME NOT NULL,
author VARCHAR(30) NULL,
profile VARCHAR(100) NULL,
PRIMARY KEY(id)
);

INT(11)
->괄호 안 숫자는, 숫자를 얼마까지 노출 시킬 것인가

NOT NULL
->Column 값으로, 값이 없는 것(null)을 허용하지 않겠다. 

 

NULL : null을 허용한다.


AUTO_INCREMENT
->자동으로 증가되도록 한다.

VARCHAR(100)
->VAR : variable의 약자
->CHAR : character의 약자
->(): 괄호안 숫자는 입력 가능한 숫자를 정해주는 것. 데이터 길이

PRIMARY KEY(id)

->유일한 값이 저장되어야 할 때, "중복되지 않는 식별자"

->key를 통해서 각각의 행을 식별할 수 있다.

->id column이 주 키로 설정한다.
->key를 쓰는 이유로는, 성능적인 측면과 중복을 방지의 기능이 있다.

 

테이블 생성

 

MySQL DATA Type

데이터베이스는 물리적 공간을 차지하므로 저장하고자 하는 데이터의 최댓값에 가장 가까운 데이터 타입을 선택하는 것을 권고.

https://dev.mysql.com/doc/refman/8.0/en/data-types.html

 

MySQL :: MySQL 8.0 Reference Manual :: 11 Data Types

MySQL supports a number of SQL data types in several categories: numeric types, date and time types, string (character and byte) types, spatial types, and the JSON data type. This chapter provides an overview of these data types, a more detailed descriptio

dev.mysql.com

 

 

※ 엑셀과 Mysql과의 중요한 차이점
1. 엑셀에는 어떠한 종류의 데이터를 담을 수 있지만, Mysql에는 data types을 강제할 수 있다. 
2. 아이디와 같이 꼭 있어야 하는 값 혹은 없어도 되는 값들을 미리 설정할 수 있다. 
3. Mysql은 데이터의 길이를 제한할 수 있다. 
4. PRIMARY KEY(column name) - 특정 컬럼의 데이터가 중복되는것을 막아, 각각의 행이 고유한 값을 갖게 한다.  
이런 Mysql의 특징들 덕분에 덕분에 우리는 우리가 관리할 데이터베이스가 쉽고 깔끔하게 정리하고 유지할 수 있다.