PracticeEveryday
MySQL 본문
CREATE / ALTER
CREATE
// MySQL에서 데이터 베이스와 테이블을 만들기 위한 Query
Ex)
CREATE DATABASE [DB 이름];
CREATE TABLE [TABLE 이름];
CREATE TABLE 테이블 이름 (
필드 이름 1 필드 타입 1,
ID INT
필드 이름 2 필드 타입 2,
Name VARCHAR(30)
...
);
테이블을 생성하기 위해서는 테이블 이름, 필드(Field) 목록과 각 필드의 타입을 명시해야 합니다.
필드의 타입이란 해당 필드에 저장 될 데이터가 가질 수 있는 데이터 타입을 의미합니다!!
USE
// DATABASE를 만들고 난 후 해당 DB를 사용하기 위해서 사용하는 Query
USE [DB 이름];
DESCRIBE / DESC
// 해당 테이블의 상세 정보를 알기 위한 Query
DESCRIBE ( or DESC) [TABLE 이름];
TABLE의 제약 조건(Contraint)
제약 조건이란 데이터를 입력 받을 때 데이터의 무결성을 보장하기 위해 실행되는 검사 규칙을 의미합니다.
CREATE TABLE 문에서 사용할 수 있는 제약 조건은 다음과 같습니다.
1. NOT NULL : 해당 필드는 NULL 값을 저장할 수 없게 됩니다.
2. UNIQUE : 해당 필드는 서로 다른 값을 가져야만 합니다.
3. PRIMARY KEY : 해당 필드가 NOT NULL과 UNIQUE 제약 조건의 특징을 모두 가지게 됩니다.
4. FOREIGN KEY : 하나의 테이블을 다른 테이블에 의존하게 만듭니다.
5. DEFAULT : 해당 필드의 기본값을 설정합니다.
ALTER
// MySQL에서 데이터 베이스와 테이블을 내용을 수정할 수 있는 Query
Ex)
ALTER DATABASE [DB 이름];
ALTER TABLE [TABLE 이름];
데이터 베이스 수정
// 데이터 베이스의 문자 집합이나 콜레이션을 변경할 수 있는 Query
ALTER DATABASE [DB 이름] CHARACTER SET = [문자 집합 이름]; // Charset : 문자 집합
ALTER DATABASE [DB 이름] COLLATE = [콜레이션 이름]; // Collation : 대조
데이터베이스를 구축하다보면 텍스트 데이터(Text Data)를 취급해야 할 때가 있다.
이때 반드시 고민해야 하는 것이 있는데, 바로 문자셋(character set)을 선택하는 것이다.
/*
CHARACTER SET 종류 :
utf8: UTF-8 유티코드를 지원하는 문자셋
euckr: 한글을 지원하는 문자셋
Collation 은 텍스트 데이터를 정렬(ORDER BY)할 때 사용한다. 즉 text 계열 자료형에서만 사용할 수 있는 속성이다.
int 형 : 1500 < 1700 으로 명확하다.
date 형 : 2013-10-20 < 2015-12-20 으로 명확하다.
- 그렇다면 text 형 :
a 와 b 중 어느 것이 더 큰가?
a 와 A 중 어느 것이 더 큰가?
a 와 á 중 어느 것이 더 큰가?
자주 사용되는 COLLATE
1. utf8_bin
2. utf8_general_ci (기본 설정)
3. euckr_bin
4. euckr_korean_ci
ci = case-insensitive 를 의미하며 대소문자를 구분하지 않게 설정함.
*/
이런 것을 정해주는 것이 CHARACTER SET , COLLATE
테이블 수정
// 테이블 새로운 필드 추가하는 Query
ALTER TABLE [테이블 이름] ADD [필드 이름] [필드 타입]
ALTER TABLE Reservation ADD phone INT;
Reservation 테이블에 phone이라는 필드를 INT 데이터 타입으로 추가해줘
// 기존 필드 삭제하는 Query
ALTER TABLE [테이블 이름] DROP [필드 이름]
ALTER TABLE Reservation DROP RoomNum;
Reservation 테이블에 RoomNum이라는 필드를 삭제해줘
// 필드 타입을 변경하는 Query
ALTER TABLE [테이블 이름] MODIFY COLUMN [필드 이름] [필드 타입];
ALTER TABLE Reservation MODIFY COLUMN ReserveDate VARCHAR(20);
Reservation 테이블의 ReserveDate 필드의 데이터 타입을 VARCHAR(20)으로 바꿔줘
코딩교육 티씨피스쿨
4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등
tcpschool.com