MySQL에서 테이블 만드는 방법
Wenhao Wang
Dev Intern · Leapcell

Key Takeaways
CREATE TABLE
구문을 사용하여 구조, 데이터 형식 및 제약 조건을 정의합니다.- 레코드를 고유하게 식별하려면 항상 기본 키를 포함하십시오.
- 제약 조건을 적절히 사용하면 데이터 무결성 및 관계 일관성이 보장됩니다.
테이블 생성은 관계형 데이터베이스 작업의 기본 단계입니다. MySQL에서 테이블은 행과 열에 데이터를 저장하며, 각 열은 특정 데이터 형식을 가집니다. 이 문서는 MySQL에서 SQL 구문을 사용하여 테이블을 만드는 방법에 대한 포괄적인 가이드를 제공합니다.
필수 조건
MySQL에서 테이블을 만들기 전에 다음 사항을 확인하십시오.
- 실행 중인 MySQL 서버 인스턴스
- 테이블을 만들 수 있는 권한이 있는 사용자 계정
- MySQL 클라이언트 액세스 (예: MySQL Shell, MySQL Workbench 또는 명령줄 인터페이스)
CREATE TABLE
의 기본 구문
MySQL에서 테이블을 만드는 기본 구문은 다음과 같습니다.
CREATE TABLE table_name ( column1_name data_type constraints, column2_name data_type constraints, ... );
예제
CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL, email VARCHAR(100) UNIQUE, created_at DATETIME DEFAULT CURRENT_TIMESTAMP );
이 예에서:
id
는 자동 증가하고 기본 키 역할을 하는 정수 열입니다.username
은 필수 (NOT NULL) 가변 문자 형식의 열입니다.email
은 고유해야 합니다.created_at
은 현재 타임스탬프의 기본값을 가집니다.
일반적인 데이터 형식
다음은 일반적으로 사용되는 MySQL 데이터 형식입니다.
데이터 형식 | 설명 |
---|---|
INT | 정수 |
VARCHAR(n) | 가변 길이 문자열 (최대 n ) |
TEXT | 긴 텍스트 데이터 |
DATE | 날짜 값 (YYYY-MM-DD ) |
DATETIME | 날짜 및 시간 (YYYY-MM-DD HH:MM:SS ) |
BOOLEAN | 부울 값 (true/false) |
FLOAT | 부동 소수점 숫자 |
제약 조건 추가
제약 조건은 테이블의 데이터에 대한 규칙을 정의합니다.
PRIMARY KEY
는 각 레코드를 고유하게 식별합니다.NOT NULL
은 열이 NULL 값을 가질 수 없도록 합니다.UNIQUE
는 열의 모든 값이 서로 다르도록 합니다.DEFAULT
는 기본값을 설정합니다.FOREIGN KEY
는 열을 다른 테이블에 연결합니다.
외래 키가 있는 예제
CREATE TABLE orders ( order_id INT PRIMARY KEY, user_id INT, order_date DATE, FOREIGN KEY (user_id) REFERENCES users(id) );
이 테이블은 orders
테이블과 users
테이블 간의 관계를 만듭니다.
팁과 모범 사례
- 레코드를 고유하게 식별하려면 항상 기본 키를 지정하십시오.
- 데이터 무결성을 보장하기 위해 적절한 데이터 형식과 제약 조건을 사용하십시오.
- 예약어를 테이블 또는 열 이름으로 사용하지 마십시오.
- 일관된 명명 규칙을 사용하십시오 (예:
snake_case
).
결론
MySQL에서 테이블을 만드는 것은 기본 구문과 데이터 형식을 이해하면 간단합니다. 적절한 테이블 디자인은 확장성과 성능에 매우 중요하므로 스키마와 제약 조건을 계획하는 데 시간을 할애하십시오. 간단한 앱을 구축하든 복잡한 시스템을 구축하든 테이블 생성을 마스터하는 것은 필수적인 MySQL 기술입니다.
FAQs
데이터 형식이 있는 열이 하나 이상 필요합니다. 기본 키를 사용하는 것이 좋습니다.
예, ALTER TABLE
을 사용하여 열 및 제약 조건을 추가, 제거 또는 수정할 수 있습니다.
MySQL은 null과 중복을 허용하므로 일관성 없거나 신뢰할 수 없는 데이터가 발생할 수 있습니다.
백엔드 프로젝트 호스팅을 위한 최고의 선택, Leapcell입니다.
Leapcell은 웹 호스팅, 비동기 작업 및 Redis를 위한 차세대 서버리스 플랫폼입니다.
다국어 지원
- Node.js, Python, Go 또는 Rust로 개발하십시오.
무료로 무제한 프로젝트 배포
- 사용량에 따라서만 지불하십시오. 요청이 없으면 요금이 부과되지 않습니다.
타의 추종을 불허하는 비용 효율성
- 유휴 요금 없이 사용한 만큼만 지불하십시오.
- 예: $25는 평균 응답 시간 60ms에서 694만 건의 요청을 지원합니다.
간소화된 개발자 경험
- 간편한 설정을 위한 직관적인 UI.
- 완전 자동화된 CI/CD 파이프라인 및 GitOps 통합.
- 실행 가능한 통찰력을 위한 실시간 메트릭 및 로깅.
손쉬운 확장성 및 고성능
- 고도의 동시성을 쉽게 처리하기 위한 자동 확장.
- 운영 오버헤드가 전혀 없습니다. 구축에만 집중하십시오.
Documentation에서 자세히 알아보십시오!
X에서 저희를 팔로우하세요: @LeapcellHQ