프로그래밍/MYSQL

mysql ALTER TABLE

타코코딩 2023. 10. 19. 17:37
 ALTER TABLE
ALTER TABLE명령문은 기존 데이터베이스 테이블을 수정하는 데 사용됩니다. 이를 사용하여 열을 추가, 수정 또는 삭제하고, 열 데이터 유형을 변경하고, 테이블의 기타 구조적 변경을 수행할 수 있습니다.

 

 

-- 칼럼추가 : ADD COLUMN(CONSTRAINT) [칼럼명 데이터타입(크기)]

-- 컬럼변경 :modify column [변경하는 칼럼크기 ]

-- 컬럼삭제 : drop column [삭제할 칼럼명]

-- 칼럼 변경과 삭제는 데이터가 존재한다면.. 반드시 데이터 유실 부분을 체크하도록 한다!!

예제

-- emp 테이블에 부서 아이디(dept_id, 문자, 가변형 10) 칼럼을 추가해 주세요

ALTER table emp ADD column dept_id varchar(10);

-- emp 테이블의 dept_id 칼럼의 크기를 문자형,5 변경

ALTER TABLE emp MODIFY COLUMN dept_id varchar(5);

설명

새 열 추가:

기존 테이블에 새 열을 추가하려면 다음 ADD절을 사용할 수 있습니다.

ALTER TABLE table_name

ADD new_column_name data_type;

 

:

ALTER TABLE customers

ADD phone_number VARCHAR(15);

 

기존 열 수정:

기존 열을 수정하려면 MODIFY절을 사용할 수 있습니다. 이는 열의 데이터 유형이나 크기를 변경하는 데 사용할 수 있습니다.

ALTER TABLE table_name

MODIFY column_name new_data_type;

 

:

ALTER TABLE products

MODIFY price DECIMAL(10, 2);

 

열 이름 바꾸기:

기존 열의 이름을 바꾸려면 다음 CHANGE절을 사용할 수 있습니다.

ALTER TABLE table_name

CHANGE old_column_name new_column_name data_type;

 

:

ALTER TABLE orders

CHANGE order_date order_placed_date DATE;

 

열 삭제:

기존 열을 삭제하려면 다음 DROP절을 사용할 수 있습니다.

ALTER TABLE table_name

DROP column_name;

 

:

ALTER TABLE employees

DROP salary;

 

기본 키 추가:

테이블에 기본 키를 추가하려면 제약 조건 ADD과 함께 절을 사용할 수 있습니다 PRIMARY KEY.

ALTER TABLE table_name

ADD PRIMARY KEY (column_name);

 

:

ALTER TABLE customers

ADD PRIMARY KEY (customer_id);

 

색인 추가:

테이블에 인덱스를 추가하려면 or 제약 조건 ADD과 함께 절을 사용할 수 있습니다. INDEXUNIQUE INDEX

ALTER TABLE table_name

ADD INDEX index_name (column_name);

 

ALTER TABLE products

ADD INDEX product_name_index (product_name);

 

이는 MySQL에서 명령문의 일반적인 사용 사례 중 일부입니다 ALTER TABLE. 이는 애플리케이션의 요구 사항이 변경됨에 따라 데이터베이스 테이블의 구조를 유연하게 수정할 수 있는 기능을 제공합니다. ALTER TABLE 특히 프로덕션 환경에서 를 사용할 때는 수정 중에 테이블을 잠가 잠재적으로 애플리케이션 성능에 영향을 미칠 수 있으므로 주의해야 합니다..

'프로그래밍 > MYSQL' 카테고리의 다른 글

mysql 다른 db 테이블을 복사해오기  (0) 2023.12.05
mysql 데이터 변경 DML UPDATE ~ SET  (0) 2023.10.19
mysql 테이블 복제 create as select (CAS)  (1) 2023.10.19
mysql Subquery (서브쿼리)  (1) 2023.10.17
mysql OUTER JOIN  (1) 2023.10.17