테이블 생성 및 제약 사항
테이블이란
MySQL에서 테이블(table)은 데이터를 저장하는 기본적인 단위입니다.
테이블은 열(column)과 행(row)으로 이루어져 있으며, 각 열은 데이터 유형을 나타내는 데이터 형식(data type)을 가지고 있습니다.
데이터베이스에서 테이블은 다음과 같은 정보를 포함할 수 있습니다.
- 테이블 이름
- 열 이름
- 열 데이터 형식
- 빈 값 허용 여부
- 기본값
- 제약 조건 (Primary Key, Unique Key, Foreign Key 등)
- 인덱스
SQL (Structured Query Language)은 데이터베이스 관리 시스템 (DBMS)에서 데이터를 관리하고 검색하기 위해 사용되는 표준 데이터베이스 언어입니다. (안시 쿼리) |
코드 예시)

DESC 명령어는 특정 테이블의 구조(스키마) 정보를 출력하는 명령어입니다. DESC는 DESCRIBE 의 약어로, 테이블의 구조 정보를 보다 간략하게 확인할 수 있도록 지원하는 명령어입니다.

테이블 생성 시 기본키를 추가하는 방법 (2가지)


이미 생성된 테이블에 PK(기본키 - 제약 조건)를 추가하는 방법
기본키를 추가하면 해당 열에 대한 중복 데이터가 저장될 수 없으며, 데이터 검색 속도가 향상됩니다.
기본키는 테이블 내에서 고유한 값이어야 하며, 해당 열에 대해 Not Null 제약 조건이 설정되어 있어야 합니다.


MySQL에서 가장 많이 사용하는 데이터 타입
- 숫자 타입: INT, BIGINT, FLOAT, DOUBLE 등
- 문자열 타입: VARCHAR, CHAR, TEXT, BLOB 등
- 날짜/시간 타입: DATE, TIME, DATETIME, TIMESTAMP 등
- 불리언 타입: BOOLEAN, BOOL 등
데이터 타입은 테이블의 컬럼에 저장될 데이터의 형식을 결정하므로, 정확한 데이터 타입을 선택하는 것이 중요합니다. 이를 통해 데이터베이스의 성능을 최적화하고, 데이터 무결성을 보장할 수 있습니다.
숫자 타입은 정수형(INT, BIGINT)과 실수형(FLOAT, DOUBLE)으로 구분됩니다. 정수형은 소수점 이하의 값을 저장하지 않으며, 실수형은 소수점 이하의 값을 저장할 수 있습니다. 문자열 타입은 고정 길이(CHAR)와 가변 길이(VARCHAR)로 구분됩니다. 고정 길이는 저장할 데이터의 길이가 일정하며, 가변 길이는 저장할 데이터의 길이가 가변적입니다.
TEXT는 대부분의 문자열 데이터를 저장하는 데 사용됩니다.
BLOB는 이진 데이터를 저장하는 데 사용됩니다. 최대 크기는 TEXT와 동일하지만, TEXT는 문자 집합(Character Set)과 관련된 처리를 합니다. BLOB은 이진 데이터로 간주되어 문자 집합에 영향을 받지 않습니다.
날짜/시간 타입은 날짜(DATE), 시간(TIME), 날짜와 시간(DATETIME, TIMESTAMP) 등으로 구분됩니다. 불리언 타입은 참(TRUE, 1)과 거짓(FALSE, 0) 두 가지 값을 저장할 수 있습니다.
` ` (백틱)


default








date 타입

오류 발생 상황(3가지)
