MySQL - 컬럼 추가/삭제

안녕하세요, 데이터베이스 열정가 여러분! 오늘 우리는 MySQL 컬럼 조작의 흥미로운 세계로 뛰어들어 볼 거예요. 초보자이시라도 걱정 마세요; 나는 마치 내 강의실에서 옆에 앉아가는 것처럼 단계별로 안내해 드릴게요. 이 튜토리얼이 끝나면, 프로처럼 컬럼을 추가하고 삭제할 수 있을 거예요!

MySQL - Add/Delete Columns

MySQL 테이블에 컬럼 추가하기

먼저 기본적인 내용부터 시작해보겠습니다. 기존 테이블에 컬럼을 추가하는 것은 스프레드시트에 새로운 카테고리를 추가하는 것과 같아요. 데이터베이스가 성장하고 진화함에 따라 자주 마주치게 될 일반적인 작업입니다.

컬럼 추가의 일반 문법은 다음과 같습니다:

ALTER TABLE table_name
ADD column_name datatype;

이를 간단히 설명하자면:

  • ALTER TABLE은 MySQL에게 기존 테이블을 수정하고 싶다고 알립니다
  • table_name은 수정할 테이블의 이름입니다
  • ADD는 추가할 것을 지정합니다
  • column_name은 새로운 컬럼의 이름입니다
  • datatype은 컬럼이 저장할 데이터 유형을 정의합니다

현실적인 예를 들어보겠습니다. 예를 들어, students라는 테이블이 있고, 이 테이블에 이메일 주소 컬럼을 추가하고 싶습니다:

ALTER TABLE students
ADD email VARCHAR(100);

이 경우, 우리는 최대 100자까지 저장할 수 있는 email 컬럼을 추가합니다. 이 명령어를 실행한 후, 테이블에 있는 모든 학생은 새로운 email 필드를 가지게 되지만, 기존 레코드는 비어 있을 것입니다 (NULL).

기본값을 가진 컬럼 추가하기

occasionally, we want our new column to have a default value. Here's how we do that:

ALTER TABLE students
ADD graduation_year INT DEFAULT 2023;

이 명령어는 graduation_year 컬럼을 추가하고, 모든 기존 및 새로운 레코드에 대해 2023을 기본값으로 설정합니다.

여러 개의 컬럼 추가하기

그렇다면 여러 개의 컬럼을 추가해야 할 때는 어떻게 하나요? 이를 한 번의 명령어로 수행할 수 있어 더 효율적입니다.

이를 위한 문법은 다음과 같습니다:

ALTER TABLE table_name
ADD column1 datatype,
ADD column2 datatype,
ADD column3 datatype;

우리의 students 테이블에 여러 개의 컬럼을 추가해보겠습니다:

ALTER TABLE students
ADD phone VARCHAR(15),
ADD address VARCHAR(200),
ADD enrollment_date DATE;

이 명령어는 한 번에 세 개의 새로운 컬럼 phone, address, enrollment_date를 추가합니다. 마치 우리의 학생 테이블이 급격히 성장한 것처럼!

MySQL 테이블에서 컬럼 삭제하기

컬럼을 추가할 수 있는 것처럼, 컬럼을 삭제할 수도 있습니다. 문법은 매우 유사합니다:

ALTER TABLE table_name
DROP COLUMN column_name;

예를 들어, address 컬럼이 더 이상 필요하지 않다고 결정했습니다:

ALTER TABLE students
DROP COLUMN address;

푸фф! address 컬럼이 사라집니다. 하지만 조심하세요! 이 작업은 영구적이며 해당 컬럼의 모든 데이터가 삭제됩니다. 컬럼을 삭제하기 전에 항상 두 번 확인하세요.

여러 개의 컬럼 삭제하기

여러 개의 컬럼을 한 번에 삭제할 수도 있습니다:

ALTER TABLE students
DROP COLUMN phone,
DROP COLUMN enrollment_date;

이 명령어는 phoneenrollment_date 컬럼을 한 번에 삭제합니다.

클라이언트 프로그램을 사용하여 테이블에서 컬럼 추가/삭제하기

우리는 원시 SQL 명령어를 살펴보았지만, 많은 사람들은 MySQL과 상호작용하기 위해 클라이언트 프로그램을 사용합니다. 이 프로그램들은 이러한 작업을 위한 그래픽 인터페이스를 제공합니다.

예를 들어, phpMyAdmin을 사용할 때:

  1. 데이터베이스와 테이블을 선택합니다
  2. "구조" 탭을 클릭합니다
  3. 컬럼을 추가하려면 하단으로 스크롤하여 "컬럼 추가" 폼을 사용합니다
  4. 컬럼을 삭제하려면 컬럼 이름 옆의 "삭제" 링크를 클릭합니다

기억하세요, 원시 SQL을 사용하든 클라이언트 프로그램을 사용하든, 기본적인 연산은 동일합니다.

메서드 요약

여기서 다룬 방법들의 빠른 참조 표입니다:

작업 문법 예제
단일 컬럼 추가 ALTER TABLE table_name ADD column_name datatype; ALTER TABLE students ADD email VARCHAR(100);
기본값을 가진 컬럼 추가 ALTER TABLE table_name ADD column_name datatype DEFAULT value; ALTER TABLE students ADD graduation_year INT DEFAULT 2023;
여러 개의 컬럼 추가 ALTER TABLE table_name ADD column1 datatype, ADD column2 datatype; ALTER TABLE students ADD phone VARCHAR(15), ADD address VARCHAR(200);
단일 컬럼 삭제 ALTER TABLE table_name DROP COLUMN column_name; ALTER TABLE students DROP COLUMN address;
여러 개의 컬럼 삭제 ALTER TABLE table_name DROP COLUMN column1, DROP COLUMN column2; ALTER TABLE students DROP COLUMN phone, DROP COLUMN enrollment_date;

이제 MySQL에서 컬럼을 추가하고 삭제하는 데 필요한 모든 도구를 갖추셨습니다. 강력한 권한이 주어지면 큰 책임도 따릅니다. 데이터베이스 구조를 수정하기 전에 항상 신중하게 생각하고, 중요한 변경 사항을 하기 전에 데이터를 백업하세요.

마무리하면서, 한 학생이 실수로 잘못된 컬럼을 삭제하고 프로젝트 데이터를 모두 잃은 일을 떠올립니다. 그 학생이 되지 마세요! 명령어와 테이블 이름을 입력하기 전에 항상 두 번 확인하세요.

이 명령어들을 계속 연습하면, 곧 두 번째 천성이 될 것입니다. 누구 knows? SQL을 꿈에서도 꾸릴지도 모릅니다! 다음에 다시 만날 때까지, 행복하게 코딩하세요!

Credits: Image by storyset