MySQL이 열의 데이터 유형 길이를 무시하는 이유는 무엇입니까?
P粉798343415
P粉798343415 2024-03-28 11:13:09
0
1
368

저는 MySQL 8.0을 사용하고 있으며 열에 URL을 저장하려고 합니다. 191자를 초과하는 URL을 삽입하려고 할 때마다 다음 오류가 발생합니다.

으아악

열 데이터 유형은 VARCHAR(1000)이고 URL은 약 450자입니다. 다른 문자열과 191자 미만의 모든 항목을 삽입해 보았으며 191자 미만의 문자열은 모두 잘 작동하지만 191자를 초과하는 문자열은 삽입할 수 없습니다.

이 열의 데이터 유형을 TEXT, LONGTEXT 및 BLOB와 같은 다른 문자열 형식으로 변경해 보았습니다. 다른 테이블에서도 191자보다 긴 문자열을 삽입해 보았는데 역시 191자로 제한되었습니다.

utf8mb4의 결과가 실제로는 191인 VARCHAR(255)라는 것을 알고 있지만 이를 VARCHAR(1000)으로 재정의하면 안 되나요? 이 문제를 일으킬 수 있는 설정이 데이터베이스에 있습니까?

P粉798343415
P粉798343415

모든 응답(1)
P粉002546490

여기에서 가져온 내용:

으아아아

따라서 URL에 TEXT 형식을 사용하는 것이 좋습니다.

업데이트:

이 답변에 따르면 문제는 문자 집합에 utf8时,它是utf8mb4이 필요할 때 동일하게 정렬되는 것입니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿