데이터 잘림: "열에 대해 잘린 데이터" 수수께끼 탐구
데이터베이스 관리 영역에서 데이터 잘림은 특정 데이터 요소를 저장하기 위한 공간이 전체를 수용하기에는 부족합니다. 이로 인해 데이터가 잘려 손실이나 손상이 발생할 수 있습니다.
데이터 잘림의 한 가지 사례에는 MySQL 열의 데이터 유형 변경이 포함됩니다. Twilio 호출 ID(34자 문자열)를 저장하기 위한 열의 데이터 유형이 수정되는 시나리오를 생각해 보십시오. 열의 데이터를 수동으로 업데이트하려고 하면 오류 메시지가 계속 나타납니다.
| Level ||| Code | Message | Warning | 1265 | Data truncated for column 'incoming_Cid' at row 1
이 오류는 열의 데이터 유형을 적절하게 수정했는데도 발생합니다.
문제의 근본 원인 : 길이 불일치
이 경우 근본적인 문제는 수신_Cid 열의 잘못된 문자 길이에 있습니다. 데이터 유형이 CHAR(34)로 수정되었을 수 있지만 실제 열 길이는 CHAR(1)로 유지됩니다. 이러한 불일치로 인해 34자 통화 ID를 저장하려고 하면 데이터가 잘립니다.
잘림 문제 해결
이 문제를 해결하고 적절한 데이터 저장을 보장하려면 다음을 따르십시오. 절차:
열 길이 확인: 다음 명령을 사용하여coming_Cid 열의 문자 길이가 현재 1인지 확인합니다.
SHOW COLUMNS FROM calls LIKE 'incoming_Cid';
열 길이 수정: 열 길이를 34자로 확장하려면 다음 명령을 실행합니다.
ALTER TABLE calls CHANGE incoming_Cid incoming_Cid CHAR(34);
샌드박스 예시
이 솔루션의 대화형 데모를 볼 수 있습니다. SQLFiddle: https://www.sqlfiddle.com/#!9/4a752/1.
위 내용은 데이터 유형을 수정한 후에도 \'incoming_Cid\' 열의 데이터가 잘리는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!