programing

MySQL-기존 데이터를 손상시키지 않고 데이터베이스에서 기존 열의 varchar 크기를 늘리는 방법은 무엇입니까?

nicescript 2021. 1. 17. 10:34
반응형

MySQL-기존 데이터를 손상시키지 않고 데이터베이스에서 기존 열의 varchar 크기를 늘리는 방법은 무엇입니까?


나는 현재 열이 varchar(100)있고 그것을 만들고 싶습니다 10000.

간단합니까?

alter table table_name set column col_name varchar (10000);

기존 데이터를 손상시키는 것이 두렵습니다. 이 쿼리를 실행해도 괜찮습니까? 아니면 alter컬럼을 다른 방식으로해야합니까?

감사!


나는 일반적으로 다음 문장을 사용합니다.

ALTER TABLE `table_name`
  CHANGE COLUMN `col_name` `col_name` VARCHAR(10000);

그러나 SET도 작동 할 것이라고 생각하며 시도한 적이 없습니다. :)


varchar 열의 크기를 늘리는 것이 안전합니다. 데이터를 손상시키지 않습니다.

마음의 평화를 얻는 데 도움이된다면 데이터 구조를 변경하기 전에 항상 데이터베이스 백업을 실행할 수 있습니다.

그런데 올바른 구문은 다음과 같습니다.

ALTER TABLE table_name MODIFY col_name VARCHAR(10000)

또한 이전에 열이 null을 허용 / 허용하지 않은 경우 열 유형 뒤에 alter table 문의 끝에 적절한 구문을 추가해야합니다.


다른 alter table 구문을 설명하고 싶습니다. MySQL 문서를 참조하세요.

열의 기본값을 추가 / 제거하려면 다음을 수행하십시오.

ALTER TABLE table_name
ALTER COLUMN col_name {SET DEFAULT literal | DROP DEFAULT}

열 이름 변경, 데이터 유형 변경 및 선택적으로 열 순서 변경 :

ALTER TABLE table_name
CHANGE [COLUMN] old_col_name new_col_name column_definition
[FIRST|AFTER col_name]

열의 데이터 유형을 변경하고 선택적으로 열 순서를 변경하려면 :

ALTER TABLE table_name
MODIFY [COLUMN] col_name column_definition
[FIRST | AFTER col_name]

나를 위해 이것을 일했습니다.

ALTER TABLE 테이블 이름 MODIFY 필드 이름 VARCHAR (128) NOT NULL;


나는 mysql을 사용하고 있으며 아래 구문이 잘 작동했습니다.

ALTER TABLE table_name MODIFY col_name VARCHAR(12);

나를 위해 이것은 효과가 있었다-

ALTER TABLE table_name ALTER COLUMN column_name VARCHAR (50)


다음 구문을 사용하십시오. alter table table_name modify column col_name varchar (10000);

참조 URL : https://stackoverflow.com/questions/10184086/mysql-how-to-increase-varchar-size-of-an-existing-column-in-a-database-without

반응형