2016-06-23 2 views
1

mysql 테이블의 "Varchar"열 중 하나를 텍스트 필드로 변환 중입니다. 나는 단순히 유형을 변환하는 하나의 변경 명령을 사용하고 있습니다. 내가 텍스트에 대해 읽고 varchar가 메커니즘을 저장하는 데 차이가 있다는 것을 알게되었습니다.Mysql에서 Varchar를 텍스트로 변환

열의 유형을 변경하고 데이터를 이동하기위한 마이그레이션 스크립트를 작성했거나 단일 유형 변경 명령으로 충분합니까?

+0

변경 사항이 생존하면 가야합니다. – Drew

+0

프로덕션 환경에서 수행 할 예정입니까? – ted

+1

매우 광범위한 질문이나 의견입니다. 일부 답변은 다른 rdbms '에 있습니다 ... http://dba.stackexchange.com/q/27153 ... 귀하의 질문에 여러 번 여러 번 물었습니다. 이전 write-ups를 둘러 보자 – Drew

답변

0

textvarchar보다 더 많은 데이터 길이를 지원하기 때문에 textvarchar를 변경하는 큰 문제가없는,하지만 필드에 인덱스가있는 경우 드롭 접두사 col_name(length) (CREATE INDEX syntax 참조) 새로운 인덱스를 생성해야합니다. 데이터의 내용에 따라

아마 좋은 생각 fulltext 인덱스를 사용하는 것 않았지만 해당 필드에 검색 식을 변경을 의미한다. 프로덕션 환경에있는 경우

, 테이블은 마이그레이션이 데이터 손실을 방지하기 위해 진행되는 사이에 잠 깁니다.

+0

sqlite가 열 유형을 변경할 수 없다고 생각했습니다. 아마도 SQL 쿼리를 게시 할 수 있습니까? –