programing

MySQL 테이블에서 열을 삭제하는 방법

minecode 2022. 10. 31. 21:24
반응형

MySQL 테이블에서 열을 삭제하는 방법

다음을 사용하여 작성된 테이블 지정:

CREATE TABLE tbl_Country
(
  CountryId INT NOT NULL AUTO_INCREMENT,
  IsDeleted bit,
  PRIMARY KEY (CountryId) 
)

열을 삭제하려면 어떻게 해야 합니까?IsDeleted?

ALTER TABLE tbl_Country DROP COLUMN IsDeleted;

여기 작업 예가 있습니다.

주의:COLUMN키워드는 옵션입니다. MySQL에서는DROP IsDeleted또한 여러 열을 드롭하려면 쉼표로 구분하고 다음 열을 포함해야 합니다.DROP각각에 대해서요.

ALTER TABLE tbl_Country
  DROP COLUMN IsDeleted,
  DROP COLUMN CountryName;

이를 통해DROP,ADD그리고.ALTER하나의 문에서 여러 열을 같은 테이블에 표시합니다.MySQL 참조 매뉴얼:

여러 개를 발행할 수 있습니다.ADD,ALTER,DROP,그리고.CHANGE단일 절ALTER TABLE쉼표로 구분된 스테이트먼트.이것은 표준 SQL에 대한 MySQL 확장으로, 각 구를 1개씩만 허용합니다.ALTER TABLE진술.

와 함께 사용DROP COLUMN테이블에서 컬럼을 드롭하고CHANGE아니면MODIFY컬럼을 변경합니다.

ALTER TABLE tbl_Country DROP COLUMN IsDeleted;
ALTER TABLE tbl_Country MODIFY IsDeleted tinyint(1) NOT NULL;
ALTER TABLE tbl_Country CHANGE IsDeleted IsDeleted tinyint(1) NOT NULL;

단일 열을 삭제하려면:

ALTER TABLE `table1` DROP `column1`;

여러 열을 삭제하려면:

ALTER TABLE `table1`
DROP `column1`,
DROP `column2`,
DROP `column3`;

사용할 수 있습니다.

alter table <tblname> drop column <colname>
ALTER TABLE `tablename` DROP `columnname`;

아니면...

ALTER TABLE `tablename` DROP COLUMN `columnname`;

MySQL 5.6 이후를 실행하고 있는 경우는, 이 조작을 온라인으로 해, 조작이 실행되는 동안, 다른 세션이 테이블을 읽고 쓸 수 있도록 할 수 있습니다.

ALTER TABLE tbl_Country DROP COLUMN IsDeleted, ALGORITHM=INPLACE, LOCK=NONE;

사용하다ALTER:

ALTER TABLE `tbl_Country` DROP COLUMN `column_name`;
ALTER TABLE tbl_Country DROP columnName;

MySQL 8.0.23 이상이 Invisible Columns를 지원한다는 점을 언급할 필요가 있습니다.

CREATE TABLE tbl_Country(
  CountryId INT NOT NULL AUTO_INCREMENT,
  IsDeleted bit,
  PRIMARY KEY (CountryId) 
);

INSERT INTO tbl_Country VALUES (1, 1), (2,0);

ALTER TABLE tbl_Country ALTER COLUMN IsDeleted SET INVISIBLE;

SELECT * FROM tbl_Country;
CountryId
1
2

ALTER TABLE tbl_Country DROP COLUMN IsDeleted;

db <> 데모 표시

컬럼을 안전하게 폐기하기 전에 당분간 컬럼을 "숨길" 필요가 있는 시나리오에서 도움이 될 수 있습니다(해당 애플리케이션/리포트 재작업 등).

언급URL : https://stackoverflow.com/questions/13968494/how-to-delete-a-column-from-a-table-in-mysql

반응형